This commit is contained in:
ABelliqueux 2021-04-03 15:08:04 +02:00
parent 2c32207968
commit 8f11dbca31
14 changed files with 98 additions and 6686 deletions

File diff suppressed because it is too large Load Diff

View File

@ -28,7 +28,7 @@
#include <stdint.h>
#include <stddef.h>
// Precalculated sin/cos values
// Precalculated arctan values
#include "atan.c"
@ -36,6 +36,8 @@
#include "coridor2.c"
//
#define VMODE 0
#define SCREENXRES 320
@ -625,8 +627,9 @@ int main() {
if ( camAngles[ curCamAngle ]->bw.v0.vx ) {
FntPrint("BL x : %d, y : %d\n", camAngles[ curCamAngle ]->bw.v3.vx, camAngles[ curCamAngle ]->bw.v3.vy);
FntPrint("BR x : %d, y : %d\n", camAngles[ curCamAngle ]->bw.v2.vx, camAngles[ curCamAngle ]->bw.v2.vy);
//~ FntPrint("BL x : %d, y : %d\n", camAngles[ curCamAngle ]->bw.v3.vx, camAngles[ curCamAngle ]->bw.v3.vy);
//~ FntPrint("BR x : %d, y : %d\n", camAngles[ curCamAngle ]->bw.v2.vx, camAngles[ curCamAngle ]->bw.v2.vy);
//~ // FntPrint("Pos : %d\n", checkLineW( &camAngles[ curCamAngle ]->bw.v2, &camAngles[ curCamAngle ]->bw.v3, actorPtr) );
@ -842,6 +845,7 @@ int main() {
// Actor
if ( !getIntCollision( *actorPtr->body , *curNode->siblings->list[msh]->plane->body).vx &&
!getIntCollision( *actorPtr->body , *curNode->siblings->list[msh]->plane->body).vz )
{
@ -1062,11 +1066,11 @@ int main() {
//~ FntPrint("CurNode : %x\nIndex: %d", curNode, curNode->siblings->index);
FntPrint("Time : %d dt :%d\n", VSync(-1) / 60, dt);
FntPrint("%d\n", curCamAngle );
//~ FntPrint("Time : %d dt :%d\n", VSync(-1) / 60, dt);
//~ FntPrint("%d\n", curCamAngle );
//~ FntPrint("Actor : %d %d\n", actorPtr->pos->vx, actorPtr->pos->vy);
FntPrint("%d %d\n", actorPtr->pos->vx, actorPtr->pos->vz);
//~ FntPrint("%d %d\n", actorPtr->pos->vx, actorPtr->pos->vz);
//~ FntPrint("%d %d\n", actorPtr->pos2D.vx + CENTERX, actorPtr->pos2D.vy + CENTERY);
//~ FntPrint(" %d %d %d\n", wp.vx, wp.vy, wp.vz);
@ -1397,6 +1401,8 @@ void drawPoly(MESH * mesh, long * Flag, int atime){
// If isPrism flag is set, use it
// FIXME : Doesn't work in 8bpp/4bpp
if ( *mesh->isPrism ) {
// Transparency effect :
@ -1940,7 +1946,9 @@ void drawBG(void){
camPtr->BGtim->mode & 0x3, 0,
camPtr->BGtim->prect->x + 128,
// X offset width depends on TIM's mode
camPtr->BGtim->prect->x + ( 64 << ( camPtr->BGtim->mode & 0x3 ) ),
camPtr->BGtim->prect->y

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

5328
coridor.c

File diff suppressed because it is too large Load Diff

View File

@ -115,12 +115,12 @@ CAMPOS camPos_camPath = {
};
CAMPOS camPos_camPath_001 = {
{520,101,113},
{490,101,113},
{282,-192,0}
};
CAMPOS camPos_camPath_002 = {
{166,309,-48},
{221,309,-48},
{866,0,0}
};
@ -145,7 +145,7 @@ CAMPATH camPath = {
0,
{
{-205,156,-17},
{166,309,-48},
{221,309,-48},
{-159,57,61},
{-208,216,-86},
{-167,160,-624}
@ -11126,14 +11126,12 @@ CAMANGLE camAngle_camPath = {
&tim_bg_camPath,
_binary_TIM_bg_camPath_tim_start,
// Write quad NW, NE, SE, SW
// <bpy_struct, Object("Portal.001")>
{
{ -112, 185, 166, 0 },
{ -112, -41, 166, 0 },
{ -113, -40, 15, 0 },
{ -113, 185, 15, 0 }
{ 0, 0, 0, 0 },
{ 0, 0, 0, 0 },
{ 0, 0, 0, 0 },
{ 0, 0, 0, 0 }
},
// <bpy_struct, Object("Portal.002")>
{
{ -45, 206, 142, 0 },
{ 186, 198, 142, 0 },
@ -11168,12 +11166,11 @@ CAMANGLE camAngle_camPath_001 = {
{ 0, 0, 0, 0 },
{ 0, 0, 0, 0 }
},
// <bpy_struct, Object("Portal")>
{
{ -399, 176, 118, 0 },
{ -399, -50, 118, 0 },
{ -399, -49, 15, 0 },
{ -399, 176, 15, 0 }
{ -368, 176, 118, 0 },
{ -368, -50, 118, 0 },
{ -368, -49, 15, 0 },
{ -368, 176, 15, 0 }
},
2,
{
@ -11193,26 +11190,22 @@ CAMANGLE camAngle_camPath_002 = {
&tim_bg_camPath_002,
_binary_TIM_bg_camPath_002_tim_start,
// Write quad NW, NE, SE, SW
// <bpy_struct, Object("Portal")>
{
{ -399, 176, 118, 0 },
{ -399, -50, 118, 0 },
{ -399, -49, 15, 0 },
{ -399, 176, 15, 0 }
{ -368, 176, 118, 0 },
{ -368, -50, 118, 0 },
{ -368, -49, 15, 0 },
{ -368, 176, 15, 0 }
},
// <bpy_struct, Object("Portal.001")>
{
{ -112, 185, 166, 0 },
{ -112, -41, 166, 0 },
{ -113, -40, 15, 0 },
{ -113, 185, 15, 0 }
},
5,
3,
{
&meshCube,
&meshLara,
&meshPlan,
&meshSphere_001,
&meshSphere
}
};
@ -11228,14 +11221,12 @@ CAMANGLE camAngle_camPath_003 = {
&tim_bg_camPath_003,
_binary_TIM_bg_camPath_003_tim_start,
// Write quad NW, NE, SE, SW
// <bpy_struct, Object("Portal.001")>
{
{ -112, 185, 166, 0 },
{ -112, -41, 166, 0 },
{ -113, -40, 15, 0 },
{ -113, 185, 15, 0 }
},
// <bpy_struct, Object("Portal.002")>
{
{ -45, 206, 142, 0 },
{ 186, 198, 142, 0 },
@ -11263,14 +11254,12 @@ CAMANGLE camAngle_camPath_004 = {
&tim_bg_camPath_004,
_binary_TIM_bg_camPath_004_tim_start,
// Write quad NW, NE, SE, SW
// <bpy_struct, Object("Portal.001")>
{
{ -112, 185, 166, 0 },
{ -112, -41, 166, 0 },
{ -113, -40, 15, 0 },
{ -113, 185, 15, 0 }
},
// <bpy_struct, Object("Portal.002")>
{
{ -45, 206, 142, 0 },
{ 186, 198, 142, 0 },
@ -11299,7 +11288,6 @@ CAMANGLE camAngle_camPath_005 = {
&tim_bg_camPath_005,
_binary_TIM_bg_camPath_005_tim_start,
// Write quad NW, NE, SE, SW
// <bpy_struct, Object("Portal.002")>
{
{ -45, 206, 142, 0 },
{ 186, 198, 142, 0 },
@ -11329,13 +11317,73 @@ CAMANGLE * camAngles[6] = {
&camAngle_camPath_005,
};
NODE nodegnd_003;
NODE nodegnd_001;
NODE nodegnd_002;
NODE nodegnd;
NODE nodegnd_001;
SIBLINGS nodegnd_003_siblings = {
1,
{
&nodegnd
}
};
NODE nodegnd_003;
CHILDREN nodegnd_003_objects = {
0,
{
0
}
};
CHILDREN nodegnd_003_rigidbodies = {
2,
{
&meshSphere,
&meshSphere_001
}
};
NODE nodegnd_003 = {
&meshgnd_003,
&nodegnd_003_siblings,
&nodegnd_003_objects,
&nodegnd_003_rigidbodies
};
SIBLINGS nodegnd_001_siblings = {
1,
{
&nodegnd
}
};
CHILDREN nodegnd_001_objects = {
3,
{
&meshwall_002,
&meshwall_003,
&meshCylindre
}
};
CHILDREN nodegnd_001_rigidbodies = {
2,
{
&meshSphere,
&meshSphere_001
}
};
NODE nodegnd_001 = {
&meshgnd_001,
&nodegnd_001_siblings,
&nodegnd_001_objects,
&nodegnd_001_rigidbodies
};
SIBLINGS nodegnd_002_siblings = {
1,
@ -11369,21 +11417,21 @@ NODE nodegnd_002 = {
SIBLINGS nodegnd_siblings = {
3,
{
&nodegnd_001,
&nodegnd_003,
&nodegnd_002,
&nodegnd_003
&nodegnd_001
}
};
CHILDREN nodegnd_objects = {
6,
{
&meshSphere_001,
&meshCube,
&meshPlan,
&meshwall_001,
&meshwall,
&meshSphere_001,
&meshLara,
&meshPlan
&meshCube
}
};
@ -11402,66 +11450,6 @@ NODE nodegnd = {
&nodegnd_rigidbodies
};
SIBLINGS nodegnd_001_siblings = {
1,
{
&nodegnd
}
};
CHILDREN nodegnd_001_objects = {
3,
{
&meshwall_003,
&meshwall_002,
&meshCylindre
}
};
CHILDREN nodegnd_001_rigidbodies = {
2,
{
&meshSphere,
&meshSphere_001
}
};
NODE nodegnd_001 = {
&meshgnd_001,
&nodegnd_001_siblings,
&nodegnd_001_objects,
&nodegnd_001_rigidbodies
};
SIBLINGS nodegnd_003_siblings = {
1,
{
&nodegnd
}
};
CHILDREN nodegnd_003_objects = {
0,
{
0
}
};
CHILDREN nodegnd_003_rigidbodies = {
2,
{
&meshSphere,
&meshSphere_001
}
};
NODE nodegnd_003 = {
&meshgnd_003,
&nodegnd_003_siblings,
&nodegnd_003_objects,
&nodegnd_003_rigidbodies
};
MESH * actorPtr = &meshSphere;
MESH * levelPtr = &meshgnd;
MESH * propPtr = &meshSphere_001;

Binary file not shown.