Which commands are 2D for compatability purposes?

Blitz3D Forums/Blitz3D Beginners Area/Which commands are 2D for compatability purposes?

WarpZone(Posted 2005) [#1]
I have heard that it's a bad idea to use any 2D commands (such as plot or print) in a 3D application, because some 3D graphics cards have errors or slow down when they get fed 2D data. Coders have found clever ways to work around this, such as here, for example:
http://www.blitzbasic.com/codearcs/codearcs.php?code=1184

Anyway, I've noticed that there are some commands, such as Flip, that are listed under 2D commands in Blitz's command index, but are probabaly kosher to use in a 3D app, since there doesn't seem to be a 3D equivilent of the command.

So basically, what I'm asking is, is there a comprehensive list somewhere, of which commands in the Blitz language are 2D commands and thus need to be avoided?

I really, REALLY want my 3D app to run as fast as possible and to work on as many computers as possible. But I can't do this until I know which commands to avoid learning how to use, and which commands need a clever hacked implementation of 3D commands to replace them.

Thanks in advance for any helpful replies. :)


GfK(Posted 2005) [#2]
Basically just don't use the Image or Text/TTF functions.


WarpZone(Posted 2005) [#3]
Okay, are any of the following commands acceptable:
Text, Print, Write?

Or will I always need to draw my game's text to the screen with sprites or polygons or something?

By "The image function," do you mean ALL commands that start with the word "Image?"

It seems to me I've seen a lot of 3D Blitz code examples that involve "ImageBlah" commands for manipulating things like textures and buffer layers. What commands should be used instead?

And finally, what is TTF? I don't see a TTF command in the Blitz online help. There is a "TFormFilter" command which counds like it basically turns off anti-aliasing, but that would be TFF not TTF.

More info. More! :)


Rottbott(Posted 2005) [#4]
TTF = True Type Font, I assume.

Do not use Text, Print or Write. Avoid any commands which draw anything directly to a buffer, with the exception of RenderWorld().


WarpZone(Posted 2005) [#5]
*wince*

That's going to make it tricky to write a texture generator...

Or can I draw to materials, just not buffers...?

Sorry for being such teh noob. :) I guess I've got high aspirations...


Mustang(Posted 2005) [#6]
Best way to display text fast is to use somekind of polygon based text system... built-in text commands are good for debug purposes and for games that don't need high fps like turn-based strategy games and such. If you don't want to develop your own system you can always buy one:

http://www.blitzbasic.com/toolbox/toolbox.php?cat=14


mrmango(Posted 2005) [#7]
So what type of cards would this affect? Are we talking the older cards or any?

I wasn't aware of this, but now seeing some 3D results it makes sense to why the text flickers heavily under alot of 3D objects.

Mango


Damien Sturdy(Posted 2005) [#8]

That's going to make it tricky to write a texture generator...



Nar, you are fine to generate textures.. just dont do it every frame :P


WarpZone(Posted 2005) [#9]
Well, can I use 2D commands like plot and text if I am plotting and texting to a brush? :( If not... then how is one supposed to go about writing visual data to a brush?