3D programming

Blitz3D Forums/Blitz3D Programming/3D programming

Bremer(Posted 2003) [#1]
Hi, would it be difficult to create games in 3D if you are no good at math?


GfK(Posted 2003) [#2]
No more difficult than it'd be in 2D.


Akat(Posted 2003) [#3]
implementation of math more on AI though...


Jeppe Nielsen(Posted 2003) [#4]
No, most of it is done for you, ie moveentity, tformpoint/vector etc.
Of course you will need to know something, but as GFK says it is no more difficult than 2D.


Rottbott(Posted 2003) [#5]
I actually find 3D easier than 2D in a lot of ways..


Akat(Posted 2003) [#6]
o btw, using 'type' for math is beatiful... errr, actually math for type... or whatever


Bremer(Posted 2003) [#7]
Thanks for the answers so far. What is your opinion of the following product compaired to creating projects in Blitz3D:

http://www.conitec.net/a4info.htm

Thanks guys,


semar(Posted 2003) [#8]
3DGamesStudio is indeed a good product.

For me, the freedom that a complete programming language gives, is way more important than a pre-made engine which can be only customized.

In other terms, with B3D you have the ability of creating your own engine, and make it simple or complex as you like.

The 3DGS is a pre-made engine where you build the rest all around, configure a level and modify, between certain limits, the entity's behaviour.

The advantage of 3DGS is that you have an all-in-one product: a level editor, a mesh editor, a script language, and from the screenshots seems quite powerful.

I did tryed it, it was a demo version, and an old one. I simply didn't like the limitations and, talking about that old version, the time to compile a level was really frustrating. Without mention the prices..

Perhaps now the things are changed; but if you ask me, I prefer to deal with a no-limit language rather than customizing an engine.

Also, if you need just to code a simple application, then you don't need to use a whole engine to accomplish that; you just need few lines of code, a fast compiler, and you've done.

To put it simple, you can of course make interesting games with 3DGS; with Blitz3D, not only you can do the same - and IMHO much better - but you, with enough knowledgment and time, could build an engine like 3DGS.

I've red your first post, and seems to me you are a bit scared by math.

Well I can tell you that you don't need to be Einstein to make a good game, but indeed you need to deal with 3D objects in the world.

The same amount of math you would need also when you want to customize deeply your 3DGS level. In fact, if you want to apply your personal behaviour to some entity in the game, then you have to deal with a script language.

And in that script language, you have to code your math.

What I want to say, is that customizing an engine does not mean you don't have to deal with math.

Anyway, I don't know how the script in 3DGS would be like, if I want to point an entity and move toward it with a certain speed, when the distance is less than 10 units. But I can tell you a way it could be written in Blitz:

If EntityDistance(source,target) < 10 then
TurnEntity source,target
MoveEntity source,0,0 speed ;
endif


Still scared by 'math' ?

Sergio.


Bremer(Posted 2003) [#9]
Thank you for your answer Sergio. I will surely concider what you have said. I was wondering what kind of documentation blitz3D comes with? It it just as skimpy as the one blitzPlus comes with? I got into blitz+ rather fast, but I have programmed before, but 3D is totally new to me, so I'm thinking that documentation is important.


mearrin69(Posted 2003) [#10]
IMHO, the docs are pretty skimpy in the example usage department - but there's more than enough freely available code floating around to fill in most of the gaps.

I'm just getting into 3D programming myself and, though I'm okay with math in general, I'm not all that proficient with the kinds of math used for 3D programming (vector manipulation, etc.) It hasn't been a big problem to this point, though, because most of the hard stuff is built in.
M


semar(Posted 2003) [#11]
What mearrin69 said.

I mean, of course nothing is easy.

I was a totally newby at 3D; I bought the boxed version, which comes with an handy paper manual. There's also some tutorial in it.

I can't say I've red all the tutorials... was more the pleasure of experimenting that worked with me.

That, together with other tutorials, the forum, and the good old 'try and discovering', has brought me at a good point in 3D programming.

I must admit I have not (yet) used any of the commands related to vectors, normals... I know the potential is there, simply I did not need to use it yet.

But I'm confident that whenever I want to deal with such commands, then the learning path will be the same.

Of course the learning curve and strategy differs, and it's very subjective.

Anyway, trying to be as much unpartial as possible, I feel to say that the Blitz language is very comprehensive. For example, one of my first question was 'ok, I have that cube, which is called 'entity'; so how can I just position the entity in front of the camera now ?
Then I found the command on the examples: PositionEntity entity,x,y,z.

Again, that are just personal considerations.

Sergio


jhocking(Posted 2003) [#12]
I switched from 3D Gamestudio to Blitz for two main reasons:
flexibility of collision detection (and thus level editing) and skeletal animation. The former means that you can use any arbitrary geometry for your levels (as opposed to needed special maps created in a special level editing tool) while the latter allows all sorts of interesting manipulation of a character (eg. rotate body parts on the fly, place weapons in the character's hand, etc.)

I find programming in 3D using Blitz easier than 2D because so much basic stuff (eg. collision detection, animation playback, etc.) is done for you in 3D.