2D graphics overlaying 3D
Blitz3D Forums/Blitz3D Programming/2D graphics overlaying 3D
| ||
How do I get my 2D graphics or text to overlay my 3D background while the 3D background? An example of what I am talking about would be the start screen of Juno Nemesis, the way the menu is overlaying the moving 3D background. Is their a certain general rule on this? Thanks for any help. |
| ||
Just place the 2d stuff after Renderworld() and before Flip and it should work. |
| ||
i cant remember the code, but i know it is possible. You just have to draw the 2d after the draw of the 3d. im sure if you look at some of the code archives there are a few menu tools etc. that you could use as reference. However, 2d over 3d slows things down considerably. I might suggest you use sprites as your menu just in front of the cameras FOV. This will allow you to adjust the alpha/transparency on the menus, which you really cant do with 2d overlays. |
| ||
Very easy actually. Just DrawImage your images after you've rendered the scene (RenderWorld). Note that 2D graphics do not automatically scale to different resolutions. If this is not a problem then use the 2D commands. If you need the "2D graphics" to scale to different resolutions, then a better option would be to create a 3D sprite and place it directly in front of the camera or draw it with CameraCLSMode to True after rendering the background first. |
| ||
The author of Juno Nemesis uses FONText. Which means it uses a single-surface bitmap-font mesh. Effectively this is 3D quads/sprites. |
| ||
OK. These answers will really help out. Thanks guys. Sounds like sprites in front of the camera is what I am wanting. Peace. |