Just noticed you updated pocket pc 3d to be faster and more robust?
Seems a lot slower on my mda compact :(
Slower for me too, the Frog Jump demo is unplayable 4fps... BUT the 3D is more compatible, more demos run.
Loox410
3D, I doubt, is going to be very good on any pocket pc that doesn't have 3D accelerated hardware. And right now that's still somewhat of a minority.
Even if you have 3D accelerated hardware on a PocketPC device, what are the chances of having OpenGL drivers to actually take advantage of that 3D accelerated hardware?
Thats not the point, the 3D was faster before the last update.
OK. If it was faster before, I'll change it back. Really strange.
Its a real pity as compatibility, for me, was much better?
QuoteThats not the point, the 3D was faster before the last update.
Thanks for not answering my question.
Currently GLBasic does not support hardware acceleration. I might consider OpenGL|ES support in the future.
Get an update and see if it improved now...
QuoteEven if you have 3D accelerated hardware on a PocketPC device, what are the chances of having OpenGL drivers to actually take advantage of that 3D accelerated hardware?
The Dell Axim x50v was shipping with two open gl games before it was replaced with the x51v... not sure why they got rid of them with the upgrade...
Yes, sure. Personally I think PocketPCs in general will not gain 3D acceleration. It's not their main target and if you want 3D you'd better get a NintendoDS or a PSP console. PocketPC has a lot of other drawbacks as:
-Asking for key/mouse input drops framerates dramatically (that's a hardware defect)
-Being unable to check 2 buttons simultanously on most devices
-No 8 way D-pad
-a lot of overhead in the background
What's really great about PocketPCs is, that most people have them and do not really know what to do with them. So they need games! You can write a whole bunch of good games on PocketPC, but 3D is not its strength. I use my Smartphone much more than my PocketPC now, though I'd love to have a GSM phone in my PocketPC instead.
Anyway - did you test the new update - should speed things up.
Quote from: GernotFrischYes, sure. Personally I think PocketPCs in general will not gain 3D acceleration. It's not their main target and if you want 3D you'd better get a NintendoDS or a PSP console. PocketPC has a lot of other drawbacks as:
-Asking for key/mouse input drops framerates dramatically (that's a hardware defect)
-Being unable to check 2 buttons simultanously on most devices
-No 8 way D-pad
-a lot of overhead in the background
What's really great about PocketPCs is, that most people have them and do not really know what to do with them. So they need games! You can write a whole bunch of good games on PocketPC, but 3D is not its strength. I use my Smartphone much more than my PocketPC now, though I'd love to have a GSM phone in my PocketPC instead.
Anyway - did you test the new update - should speed things up.
Strangely this, to a certain extent, appeals to me. because of these restrictions, a PocketPC game will never survive on flashy media or feature packed 3D engine. The PSP esp. has a lot of games that look great but the gameplay sucks. PocketPC games scene is based on gaimplay 1st a foremost, its more 'adult' as a result of this. Ive allways been a big fan of turn based games, puzzles, trategic gameplay...
The one thing that is always expanding on PocketPC, is processor speed, this in turn will lead to better and better software 3D engines. So even without hardware acceleretion, the future of PocketPC 3D looks bright IMHO.
P.S. Kuron, excuse me if I interrupted your question, I was just worried that the thread was becoming off topic.
Ill try the 3D tomorrow, when I am back home.
ATI and Nvidia both have 3D accelerated mobile solutions... They are still somewhat new, but they DO have them and the newest models are implementing it. My x51v has 3d acceleration, but I think it's an intel solution so it's not all that great.
Windows mobile 5 supports direct3d mobile
Which is a step in the right direction, intergration
of hardware 3d should become more common.
maybe microsoft will release a handheld console...
btw I tested the latest version, I see no 3d at all now :(
Quotemaybe microsoft will release a handheld console...
Pocket BSOD?
mikiex: what example did you try?
You are right. I found the bug. Worked on emulator but not on real device. Get a new update.
I can get a few of the 3d samples working now... still nothing in 640x480 correctly though...
I get a few flickers of polys, but it crashes out on pocket pc :(
What example? PocketPC is quite limited in memory, so I'd not go for something big.
JumpFrog compiled as 3D works on my machine.
just something simple like this :
X_AUTONORMALS 1
Cube(0)
X_AUTONORMALS 2
Cube(1)
FILLRECT 0,0,320,240,RGB(0,0,200)
WHILE TRUE
X_MAKE3D 1, 2000, 45
X_CULLMODE 0
X_CAMERA 0,2,4, 0,0,0
phi=phi+GETTIMER()/5
X_MOVEMENT -1, 0, 0
X_ROTATION phi, 0,1,0
X_DRAWOBJ 0, 0
X_MOVEMENT 1, 0, 0
X_ROTATION phi, 0,1,0
X_DRAWOBJ 1, 0
SHOWSCREEN
X_MAKE2D
FILLRECT 0,0,320,240,RGB(0,0,200)
WEND
// ------------------------------------------------------------- //
// -=# CREATECUBE #=-
// ------------------------------------------------------------- //
FUNCTION Cube: num
LOCAL col
col=RGB(254, 254, 254) // white
colr=RGB(254, 0, 0) // white
X_OBJSTART num
// Front Face
X_OBJADDVERTEX .5, -.5, .5, 1, 0, col
X_OBJADDVERTEX -.5, -.5, .5, 0, 0, col
X_OBJADDVERTEX .5, .5, .5, 1, 1, col
X_OBJADDVERTEX -.5, .5, .5, 0, 1, col
X_OBJNEWGROUP
// Back Face
X_OBJADDVERTEX -.5, .5, -.5, 1, 1, colr
X_OBJADDVERTEX -.5, -.5, -.5, 1, 0, colr
X_OBJADDVERTEX .5, .5, -.5, 0, 1, colr
X_OBJADDVERTEX .5, -.5, -.5, 0, 0, colr
X_OBJNEWGROUP
// Top Face
X_OBJADDVERTEX -.5, .5, .5, 0, 0, col
X_OBJADDVERTEX -.5, .5, -.5, 0, 1, col
X_OBJADDVERTEX .5, .5, .5, 1, 0, col
X_OBJADDVERTEX .5, .5, -.5, 1, 1, col
X_OBJNEWGROUP
// Bottom Face
X_OBJADDVERTEX .5, -.5, -.5, 0, 1, col
X_OBJADDVERTEX -.5, -.5, -.5, 1, 1, col
X_OBJADDVERTEX .5, -.5, .5, 0, 0, col
X_OBJADDVERTEX -.5, -.5, .5, 1, 0, col
X_OBJNEWGROUP
// Right face
X_OBJADDVERTEX .5, .5, -.5, 1, 1, col
X_OBJADDVERTEX .5, -.5, -.5, 1, 0, col
X_OBJADDVERTEX .5, .5, .5, 0, 1, col
X_OBJADDVERTEX .5, -.5, .5, 0, 0, col
X_OBJNEWGROUP
// Left Face
X_OBJADDVERTEX -.5, -.5, .5, 1, 0, col
X_OBJADDVERTEX -.5, -.5, -.5, 0, 0, col
X_OBJADDVERTEX -.5, .5, .5, 1, 1, col
X_OBJADDVERTEX -.5, .5, -.5, 0, 1, col
X_OBJNEWGROUP
X_OBJEND
ENDFUNCTION
I might be able to help a little with this one..
Try creating a new xmake3d and camera for each obeject you want to render.
You are redunantly moving and rotating 2 times with one camera frame.
Also..
Showscreen automatically blacks out the screen buffer after it is rendered to the screen.
Thus eliminating the last fillrect after the showscreen, in your example will free up some memory loss:
Remove:
X_MAKE2D
FILLRECT 0,0,320,240,RGB(0,0,200)
Note: If you want to render 2d on top of the 3d, it may help if you call x_make2d only once, before showscreen. Hence, even on a normal pc the differences in performance can be drastic, if there is too much redundant and/or unused lines of code.
Instead of
X_MAKE3D 1, 2000, 45
try:
X_MAKE3D 1, 20, 45
Making the z-buffer less wide. Try on PC first. I'm very busy atm, so I can't test.
Tried that, it doesn't help, also this program used to work fine on pocket pc (it still works fine on pc)