hey guys! after thinking that i got my tile engine finally finished (30 to 60 fps with intel gfx on linux) i gave it to a friend with a windows box and a powerful ati gfx and it failed badly....
problem one: to circumvent limitations of my no-vram intel gfx i do animations by blitting the new animation frame into the texture where the old texture region was located. this enormously speeds up things on this hardware because loading everything into vram slows the app down below 1fps. on the other hand on systems with better gfx the blitting slows the rendering down and loading stuff into vram heavily speeds things up. i can do a cli switch for both of these options but somehow this is only a mere nuisance compared to: problem two: rendering on windows and/or modern gfx is slooow compared to my crap intel gfx. to correctly draw map objects in the right ordering (check out the screenshots below) i use texture groups with ordered groups as a parent and one level of order per map row so that objects that have a greater Y value on the map are drawn behind others. i have to do this as i am unable to control the ordering with the order i put data in the vertex lists due to the fact that i have to use many textures for drawing. now you can imagine that this switching between textures to preserve the ordering of the orderedgroups heavily slows things down - up to several hundred groups per draw when zooming far out. conclusion: neither on my crap intel system nor on the ati windows box of my friend i get more than 30fps. and why is that? as this will be a clone of heroes of might and magic 3 shadow of death you have to own the original game (the complete version) to really try it out. i thought about preparing a folder with symlinks of all files needed that redirect to one single dummy file but afaik this will not work on windows boxes and my main troubles i only have with windows boxes - on the same hardware my game runs slower than on linux. as you can see i do not have many benchmark tests - all i know is based on my intel/linux and his windows/ati system so i may be wrong with my conclusions but i cant imagine why he has so poor framerates even though his system is incredible fast. so what i would like to request is that some people with the original game try it out on their boxes and that people that would like to help have a quick look on the current drawing code (located in lib/ mapview.py). all i do is to fill up vertex lists on moving around and window resizing but as it is slow even when doing nothing i presume that the needed texture switching for correct ordering is the culprit. and what do i do on the long term? as the other guy is no newbie and i dont think that he made a mistake on his string windows box i cant imagine that the game should run this slow. is this only due to python/ ctypes? would it be worth the effort to implement the rendering in c and say pyglet goodby? or is sdl (pygame) the solution? will software rendering be capable enough to even draw zoomed out scenes fast? check out screenshots of how it currently looks here: http://www.assembla.com/spaces/heroes-renaissance and get the code with git: git clone git://git.assembla.com/heroes-renaissance.git read the readme for further instructions when you want to run it and drop me a mail when you have troubles. the code is half commented so it most things should be clear. and however this thread turns out: i want to finish this! so if you are (hopefully) more skilled than i am with python and opengl and also a hereos3 fanatic than you will be more than welcome! cheers josch --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "pyglet-users" group. To post to this group, send email to pyglet-users@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/pyglet-users?hl=en -~----------~----~----~----~------~----~------~--~---