SANiKs Mario Demo PSP: Difference between revisions
From GameBrew
More actions
Created page with "{{Infobox PSP Homebrews |title=SANiK's Mario Demo |image=smariodemo2.png |description=3D Mario game tech demo. |author=SANiK |lastupdated=2007/02/11 |type=Demos |version=2007..." |
|||
| Line 18: | Line 18: | ||
The only snippet of code that's really needed is: | The only snippet of code that's really needed is: | ||
< | <pre> | ||
void reflex(float *a_matrix, float a_x, float a_y, float a_z) | void reflex(float *a_matrix, float a_x, float a_y, float a_z) | ||
{ | { | ||
| Line 36: | Line 36: | ||
glVertex3f(a_x, a_y, a_z); | glVertex3f(a_x, a_y, a_z); | ||
} | } | ||
</ | </pre> | ||
==Controls== | ==Controls== | ||
Revision as of 03:08, 17 October 2022
| SANiK's Mario Demo | |
|---|---|
| General | |
| Author | SANiK |
| Type | Demos |
| Version | 2007 |
| License | Mixed |
| Last Updated | 2007/02/11 |
| Links | |
| Download | |
| Website | |
A 3D Mario game tech demo.
User guide
If one is to continue the project/start from scratch, take a look at poly.c and math.c.
The only snippet of code that's really needed is:
void reflex(float *a_matrix, float a_x, float a_y, float a_z)
{
//Apply the matrix rotation to the point
//Requires a custom matrix library
vector_matrix_mul(a_x, a_y, a_z, a_matrix);
//Apply the reflex lens formula
a_z=a_z - ((((a_x) * (a_x)) + ((a_y)*(a_y)))*0.05f);
//The 0.05f = Lens curvature
//PSP screen stretch/skew
a_x*=1.25f;
a_y*=1.05f;
//Draw the vertex
glVertex3f(a_x, a_y, a_z);
}
Controls
Cross - Jump
D-Pad - Move
Start - Quit
Screenshots
Known issues
It lags at certain points but could be sped up 90%.