Editing PspGL

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
'''pspGL''' - is a pure, minimal, hardware-accelerated implementation of something like
Hi,
OpenGL for the Playstation Portable.


== Setting up ==
pspGL is a pure, minimal, hardware-accelerated implementation of something like
 
OpenGL for the Playstation Portable. Before you are able to compile it, you
Before you are able to compile it, you need to set up a PSP toolchain and SDK.
need to set up a PSP toolchain and SDK as described on http://pspdev.org.


Export PSP_MOUNTDIR=<your_PSP_mountpoint> and PSP_REVISION=<your_PSP_revision>.
Export PSP_MOUNTDIR=<your_PSP_mountpoint> and PSP_REVISION=<your_PSP_revision>.
Line 14: Line 13:
   $ make && make -C test-egl clean install
   $ make && make -C test-egl clean install
   $ make && make -C test-glut clean install
   $ make && make -C test-glut clean install
== GLES implementation ==


All OpenGL-ES fixed-point commands are not implemented. Please take a look
All OpenGL-ES fixed-point commands are not implemented. Please take a look
Line 21: Line 18:
to the minimum OpenGL-ES profile. Define PURE_GLES before including this file
to the minimum OpenGL-ES profile. Define PURE_GLES before including this file
if you want to switch off these extensions.
if you want to switch off these extensions.
== Technical issues ==


You can also use the GL/gl.h include set, but should avoid double-precision
You can also use the GL/gl.h include set, but should avoid double-precision
Line 40: Line 35:


Only a minimum set of the core GLUT functions is implemented.
Only a minimum set of the core GLUT functions is implemented.
== Debugging ==


pspgl_misc.[hc] contains some debug functions to dump PSP GE command buffers,  
pspgl_misc.[hc] contains some debug functions to dump PSP GE command buffers,  
Line 48: Line 41:
this useful to debug your problems. Please note that still a lot of commands
this useful to debug your problems. Please note that still a lot of commands
are missing, please send patches if you enhance this functionality.
are missing, please send patches if you enhance this functionality.
== Restrictions ==


The PSP has been designed for gaming, so some OpenGL features that are rarely  
The PSP has been designed for gaming, so some OpenGL features that are rarely  
Line 56: Line 47:
GL applications for the PSP:
GL applications for the PSP:


* Only 4 light sources are supported
- only 4 light sources are supported
* Antialiasing can get switched on/off only globally
- antialiasing can get switched on/off only globally
* No user-defined clip planes are supported
- No user-defined clip planes are supported
* Only single-pixel wide lines and points
- only single-pixel wide lines and points
* Alpha channel and Stencil buffer in the frambuffer are shared.
- Alpha channel and Stencil buffer in the frambuffer are shared.
* We don't know yet whether/how the fog function can get changed.
  (Enable Stencil test if you want to write to the stencil buffer)
* Only single-sided lighting, for two sided shading you need a CW and a CCW pass.
- We don't know yet whether/how the fog function can get changed.
* No wireframe rendering, we don' know whether the PSP supports this.
- Only single-sided lighting, for two sided shading you need a CW and a CCW pass.
- No wireframe rendering, we don' know whether the PSP supports this.
 
This list is by no means complete, please report if you encounter other issues.


This list is by no means complete.
All files are BSD-licensed, feel free to use it in free or commercial projects.
enjoy, have fun,


== Licence ==
Holger Waechtler
All files are BSD-licensed. <br>
Authors are Holger Waechtler and Jeremy Fitzhardinge.


== Download ==
Download
You can download it [https://github.com/jsgf/pspgl here]
Please note that all contributions to PSP Developer wiki are considered to be released under the GNU Free Documentation License 1.2 (see PSP Developer wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following hCaptcha:

Cancel Editing help (opens in new window)