Glquake Is Alive!


Pickle

Mega GP Mania
Joined
May 30, 2006
Messages
5,527
Location
Detroit, Michigan
Website
Visit site
Update: Heres a video

Well its alive, but its crawling out of the grave...
I have something working right at this moment. But before you get your hopes up there are some things to know about

1. Doesnt work with sound enabled.
2. Its very slow only 7.9 fps, lots of flicker, like slide slow being redrawn
3. Its not very stable, i have gotten in game but there were textures missing. Although the demo everything looked very nice, which was odd?

Basically the driver provided by magiceyes is compiled with VFP, which makes gcc unhappy when you try to link to it. I went around this by dynamiclly linking at runtime all the functions needed. I first got all of the functions provided by the driver and all the functions needed by the driver linked. The 3d demo then worked as expected perfectly.
I then added the opengl wrapper code provided by nanoGL an opensource version of quake for nokia symbian phones.

I really dont know anything about opengl, so how to go on to fix this might be beyond me. I might look to compare how things are called out, but Im not guarantee that I can find the solution. Who knows maybe it;s the driver, maybe the hw is too weak? Im actually surprised Ive gotten it this far.
Any and all help would be very appreciated.

Heres an command line output:

root@wiz:/mnt/sd/games/quake# ./tyr-glquake -mem 16 -nosound
keyboard emulation started
keyboard started
Added packfile ./id1/pak0.pak (339 files)
Added packfile ./id1/pak1.pak (85 files)
Playing registered version.
Console initialized.
UDP Initialized (192.168.1.2)
Exe: 22:28:28 Feb 5 2009
16.0 megabyte heap
wizGLES: Starting
Using library: libopengles_lite.sowizGLES: Library opened! Making the interface
wizGLES: Starting to dynamically link to 194 functions!
wizGLES: Interface Complete!
wizGLES: Init GLStructs
wizGLES: Init Complete! You should have a Opengl-ES wrapper now :)
VID_Init: Creating the window
VID_Init: GL_Init starting
GL_VENDOR: MagicEyes
GL_RENDERER: VR3520F
GL_VERSION: OpenGL ES-CM 1.1
VID_Init: GL_Init finished
gl_texsort is obsolete.
gl_keeptjunctions is obsolete.
gl_reporttjunctions is obsolete.
 
Pickle said:
Basically the driver provided by magiceyes is compiled with VFP, which makes gcc unhappy when you try to link to it.
That's awful. Someone needs to go make them do it again with -msoft-float. Hard VFP has to be emulated by the kernel, involving traps on each one, context switches, etc and I guarantee you that that'll perform much worse than even the worst GCC emitted float emulation with the least optimization over it.

I'd like to know what this driver does, IE how much of the OpenGL pipeline it does in software and how much (if any) it does on the GTE (the vector unit on the 3D chip). It should probably be capable of at least performing model and projection matrix transforms in hardware I would think (which would be like 1000 times faster than doing it in VFP)
 
Last edited by a moderator:
Exophase said:
That's awful. Someone needs to go make them do it again with -msoft-float. Hard VFP has to be emulated by the kernel, involving traps on each one, context switches, etc and I guarantee you that that'll perform much worse than even the worst GCC emitted float emulation with the least optimization over it.
Probably part of the reason it's so slow.
 
Last edited by a moderator:
Pickle said:
Probably part of the reason it's so slow.
Mind you, the entire userspace still being ARM OABI and the fact that the GL lib does not seem like the only odd area is not exactly helping things. Hardware is definitely ahead of software right now (and read into that whatever you want ;))
 
Last edited by a moderator:
Latest version: CODE
http://www.youtube.com/watch?v=ErJH_inVy3Y


Theres still issues like missing textures, lots of flicker, but its getting better.
 
Peter R said:
Any speed up?

Edit: Wait, the youtube video says you are using a new OpenGL es library from GPH? Are you saying the issue is the library?
yeah thats what im saying, it went from 8 fps to 25 fps, but there are still major problems like the missing textures, flicker.
 
Last edited by a moderator:
Peter R said:
I await their further improvements to the lib then :p . What was the framerate of the purely CPU driven version?
Depends on the cpu speed, if you look at the MMU hack thread there are some numbers.
 
Last edited by a moderator:
Back
Top