irrlicht is c++ and the 95 % is independent of the platform.
The SSOO of the ps2 is linux, i think.
Anyone have do any version of irrlicht for ps2?? or have anyone think in it??
Will it do very difficult ?
Can i programmer with irrlicht with the version ps2-linux of ps2??
any tutorial or how to ?
thanks
Irrlicht for PS2??
I got the engine to compile but couldn't get any decent output.
I got stuck on the drawIndexedTriangleList().
The graphics of the PS2 cannot draw indexed data, it needs to be unpacked into seperate polys.
To draw a 2d quad using the PS2 library goes something like this (I think):
Scary huh?
I got stuck on the drawIndexedTriangleList().
The graphics of the PS2 cannot draw indexed data, it needs to be unpacked into seperate polys.
To draw a 2d quad using the PS2 library goes something like this (I think):
Code: Select all
SPS2Manager.Initialise(4096); // 4096 * 4K Pages = 16MB Total
VIFStaticDMA.Initialise(1536); // 1536 * 4K Pages = 6MB Static DMA
VIFDynamicDMA.Initialise(256); // 256 * 4K Pages * 2 Buffers =
// 2MB Dynamic DMA
// Register our signal function for every possible signal (i.e. ctrl + c)
for(int sig=0; sig<128; sig++)
signal(sig, sig_handle);
// Set up the DMA packet to clear the screen.
SPS2Manager.InitScreenClear(0x20, 0, 0x20);
// Load texture.
CTexture Tex1;
Tex1.LoadBitmap("max8bit256.bmp");
while(g_bLoop)
{
// Fire off the previous frame's buffer (or init data if it's the first time)
VIFDynamicDMA.Fire();
pad_update(PAD_0);
// Clear the screen
SPS2Manager.BeginScene();
// Upload the current texture to the free texture buffer
Tex1.Upload(480);
Tex1.Select();
// Start DIRECT mode transfer
VIFDynamicDMA.StartDirect();
// Add the GIFTag
VIFDynamicDMA.Add128(GS_GIFTAG_BATCH( 1, // NLOOP
1, // EOP
1, // PRE
GS_PRIM(PRIM_SPRITE, //PRIM
PRIM_IIP_FLAT,
PRIM_TME_ON,
PRIM_FGE_OFF,
PRIM_ABE_ON,
PRIM_AA1_OFF,
PRIM_FST_UV,
PRIM_CTXT_CONTEXT1,
PRIM_FIX_NOFIXDDA),
GIF_FLG_PACKED, //FLG
GS_BATCH_5( GIF_REG_RGBAQ, //BATCH
GIF_REG_UV,
GIF_REG_XYZ2,
GIF_REG_UV,
GIF_REG_XYZ2)));
// Add Vertex data
// Add the colour
VIFDynamicDMA.Add128(PACKED_RGBA(0x80, 0x80, 0x80, 0x80));
// Add UV texture coordinates
VIFDynamicDMA.Add128(PACKED_UV(0<<4, 0<<4));
// Add the position
VIFDynamicDMA.Add128(PACKED_XYZ2( (2048 - 128)<< 4,
(2048 - 128)<< 4,
128,
0));
// Add UV texture coordinates
VIFDynamicDMA.Add128(PACKED_UV((255<<4), (255<<4)));
// Add the position
VIFDynamicDMA.Add128(PACKED_XYZ2( (2048 + 128)<< 4,
(2048 + 128)<< 4,
128,
0));
// End the direct mode
VIFDynamicDMA.EndDirect();
// Swap the buffers
SPS2Manager.EndScene();
}
djceejay
Studying :: BSc Computer Games Technology :: UK
Studying :: BSc Computer Games Technology :: UK
-
- Posts: 448
- Joined: Tue Oct 05, 2004 3:24 am
- Location: Boston, MA
thats the life of a developer!
Irrlicht Moderator || Game Designer
Learn the basics at </dream.in.code>
Learn the basics at </dream.in.code>
The PS2 linux kit comes with a hard drive and network adapter. It is treated just like a linux box.
Have a look at http://playstation2-linux.com if you're interested.
Have a look at http://playstation2-linux.com if you're interested.
djceejay
Studying :: BSc Computer Games Technology :: UK
Studying :: BSc Computer Games Technology :: UK
But, if like djceejay (or anybody else) writes a renderer then you would only have to test it on actual hardware once in a while, because if the renderer works than it'll look the same as a PC running OGL or DX.Fraza wrote:Not to mention the amount of CD burning or whatever you have to do to feed it into the PS2 for testing... that'd be a real pain.