Blitzmax vs blitz2d?
BlitzMax Forums/BlitzMax Beginners Area/Blitzmax vs blitz2d?
| ||
Well, the artists had brought up the idea of taking our current project to 2d for dev time issues. I was thinking about using blitzmax (cause i love oop), however I need to know if blitzmax is more advanced than blitz2d/blitzplus? I know there is blending and transparancies, which is nice, however is it faster at handling images and image manipulation than Blitz2d/blitzplus? Are there any draw backs to using blitzmax for a 2d game as opposed to blitz2d/blitzplus? |
| ||
I suspect you will get more 2D processing speed in Blitz2D than BlitzMax. Why? Because BlitzMax relies on 3d acceleration (GL and eventually DX) to do its 2D stuff, which generally isn't faster and is certainly less compatible. Advantages to using BMax would be scaling/transparency etc, but also cross platform compatibility. |
| ||
I believe direct image manipulation is trickier under BMax. |
| ||
I've found Blitzmax faster than B2D/B3D when using images. Blitzmax images are stored in video ram so are accessed very quickly. Image manipulation can slow things down as they have to be converted to pixmaps (equivalent to B2D images) but still the speed is comparable. Blitzmax does suffer from the texture size issues and, when video ram is full, things slowdown as it converts back and forward. |
| ||
I would go for bmx, as the transparency and scaling possibilities are great. Also, I doubt if there will be any maior updates on BP in the next months, where BMAX probably might be enhanced in the future. |
| ||
I need to know if blitzmax is more advanced than blitz2d/blitzplus? In some occasions it's more advanced in others it seems more limited. For example in BlitzMAX you cannot use drawing commands directly on a pixmap or image, but must instead draw to the backbuffer. This means that some things will have to be designed differently, and more care will have to go into planning more complex graphical effects.However the trade-off is that your source code will cross-compile to three different platforms, you can apply object oriented principles to your source code and the ability to do real-time 3D accelerated transforms. Image performance is not likely to be worse on decent hardware, and most certainly much better on more powerful graphics cards. |
| ||
Well, so far I appreciate all the answers. The only question left is in regards to flameduck's reponse and is; if one cannot draw directly to a pixmap, can one copy the back buffer or areas of the back buffer to the pix map? Are transparancies similar to alpha maps in blitz3d? if so, is it possible using the existing command set to alter an image in blitzmax the same way you would in blitz3d? Thanks in advance. |
| ||
you can draw to pixmaps, but only if they're been created with the DYNAMICIMAGE flag. |
| ||
you can draw to pixmaps, but only if they're been created with the DYNAMICIMAGE flag. To clarify I was speaking of "SetBuffer" type functionality in BlitzPlus, not WritePixel/ReadPixel stuff. if one cannot draw directly to a pixmap, can one copy the back buffer or areas of the back buffer to the pix map? You can use WritePixel/ReadPixel style commands on pixmaps, and can also grab areas of the backbuffer, yes.It's been a while since I've used Blitz3D so I can't say with any degree of certainty how close to Blitz3D functionality it is. |
| ||
This might help... Writepixel example |