[PLEASE HELP] Should I get Blitz3D?

Community Forums/General Help/[PLEASE HELP] Should I get Blitz3D?

JoeDude36(Posted 2013) [#1]
Please dont just give me yes or no. I need to know the pros and cons and all, $59.99 or $59 or whatever it was that it costs is alot of money to me and i dont want to waste it knowing that i could use it on something else. I have BlitzPlus right now and I enjoy it.
I only make $25 a week from my allowance (Im 13).

Below I have many questions please try to answer some if you can thanks.

With Blitz3D can you use OpenGL or anything like that?
How long will it take me to learn how to make shapes or something?
How long will it take me to learn to make a fps, or third person shooter?
Is it hard to learn all this?(I dont give up on programming languages very easily, but will this make me)
Are alot of the commands like BlitzPlus?
Could I do networking for some type of 3D online game?
Is team collaboration easy?(This doesnt matter too much)
Are there many tutorials?

And lastly, would it be money well spent?


Kirkkaf13(Posted 2013) [#2]
Hi Joe,

Although I would class myself as new to Blitz3D aswell I will try answer your questions to the best of my ability.

With Blitz3D can you use OpenGL or anything like that?


I don't believe so, Blitz3d uses Direct X 7 and the idea of this product is to not have to deal with low level graphical programming.

How long will it take me to learn how to make shapes or something?
How long will it take me to learn to make a fps, or third person shooter?


This will vary from individual and the available time you have will be a factor. Although Blitz3D does enable you to have a graphical scene with very little code.

Is it hard to learn all this?


Again this varies of the individual.

Are alot of the commands like BlitzPlus?


Yes, they are very similar you can take a look at the manual for Blitz3d: Here

Could I do networking for some type of 3D online game?


Yes, again check out the manual for the networking functions.

Is team collaboration easy?(This doesnt matter too much)


I would say no as this is not something built into the IDE. That doesn't stop you from working in a team if you share the work out between you.

Are there many tutorials?


Yes, you can check out the tutorial forum, the code archives and there are some books available.

And lastly, would it be money well spent?


I think anyone currently using Blitz3D would say so, personally I would say no as I brought it over 4 years ago and not done anything with it as I focused on my career instead but I am hopefully going to change my opinion.

Hope this helps.


JoeDude36(Posted 2013) [#3]
-mainchip
Thank you very much


Yasha(Posted 2013) [#4]
To be brutally honest... probably not worth it in this day and age. There are much better solutions out there nowadays that can be had for the same amount or even for free.

Blitz3D is a product that dates back to the PS1/PS2 era (it's probably older than you are!), when 3D was a difficult and tedious thing, and it hasn't really aged very well and doesn't offer very much compared to 2013-era engines. Both the language and the 3D graphics system are very dated and limited compared to modern tools, and learning them will teach you a little bit... but it will also set you into some extremely obsolete habits and ways of thinking about 3D graphics that will take longer to un-learn (B3D is based on a kind of 3D technology that essentially no longer exists, but modern graphics cards are fast enough to emulate it in hardware so that older games still work).


To try to answer your individual questions:

-- B3D is a "higher level" (more abstract) command set than OpenGL (or DirectX, which is the one it uses; you could build it on either). Instead of directly building strips of triangles and throwing them at the GPU under different renderstates, you just put objects in a scene and move them around, and the engine takes care of the gritty details of how these actually get rendered.

-- To make simple shapes and move them around? Depends how fast you are, but between minutes and hours. You should grasp this in a single session if you study the tutorials carefully.

-- To make an actual shooter game? You should be prepared to spend weeks or months on this - after you've learned the ins-and-outs of the programming. Making an actual playable game involves a lot of time spent on things like creating artwork and testing that it plays properly. (An experienced B3D user could probably knock out an FPS where blank cubes jump around firing more cubes at each other in an afternoon, but who wants to play that?) Even something like Doom would take weeks of work on level design (if you want it to be any good), even though the programming would only take a couple of days.

-- The difficulty depends entirely on you. In my opinion, programming is easy but game design is very, very hard (as above, games are 90% stuff-other-than-programming, like models and animations and so on).

-- The language is actually the same as BlitzPlus, except that BlitzPlus's GUI commands are all gone and replaced with a bunch of 3D graphics commands. The 2D graphics part is actually the same between B3D and B+.

-- Networking: yep. Several good examples of that in the code archives, too.

-- B3D does not provide any particular collaboration tools, so collaboration is entirely a factor of what else you're using (use Git for version control: you won't regret it) and how well your team work together.

-- There are a lot of tutorials.

All that though... no, I don't think it would be money well spent at this time in history. B3D was an awesome purchase in the 2000-2004, but the world has moved on and it hasn't. You'd be stuck using archaic techniques, writing slow code for a slow engine, and unable to port to targets like iOS or Linux, or to fix compatibility problems with newer versions of Windows. Much as I love it and love working with it, I definitely couldn't say that it's a solid choice for a beginner any more, when nowadays there are far more powerful engines available for free.


If you can save up $200, an absolutely brilliant commercial engine for PC and Mac (and soon, Linux) is Leadwerks 3 (it's actually made by a B3D veteran!). It's insanely powerful, and uses modern rendering techniques of the sort that belong in triple-A mainstream games. Although the author's a bit of a C++ fan, you can also use it out-of-the-box with Lua, which is a nice friendly language a lot like a modernised and updated BASIC. In a lot of ways you could view Leadwerks+Lua as a B3D successor.

While there are a lot of powerful free engines out there that also beat B3D on rendering ability, I don't know of any that are easy to just set up and go the way B3D or Leadwerks is (to be honest, this is 90% of what you pay for). Many of them also require you to have at least a basic knowledge of C or C++ (at the very least you usually need to be able to patch in Lua yourself, so that you can stop doing anything further in C).

Finally, this is a bit of a gratuitous self-plug, but you can always check out bOGL-2 for BlitzPlus, which is a free BlitzPlus library that introduces a cut-down 3D engine similar to (but not the same as) Blitz3D. Might help you get a taste for 3D before you spend any money. (It's very slow and limited even compared to B3D, and doesn't have many comands, but it is usable. You could make something like Quake II in it no problem.)


Kryzon(Posted 2013) [#5]
Hi.
I love Blitz3D. I have learned so much from it and would confidently recommend it to myself in the past. I think I picked it up when I was about your age; I'm 23 now.
Up to this day I still open it to test some game techniques - it's amazing how fast and enjoyable it is to prototype stuff with it. So yes, it's still got value.

If you don't have any money to spend, you can look for other solutions. --


skidracer(Posted 2013) [#6]
The Blitz3D demo is free and the only restriction is a 16K source code limit which is pretty generous.

Kryzon, if you don't mind, please refrain from promoting Unity on this site.


Kirkkaf13(Posted 2013) [#7]
I would like to mention that I am using Blitz3D because I already own it and would like to learn what it takes to put a game together which I never got the chance to do before.

I am fully aware of Blitz3D's age and looking to do nothing for than throw a few ideas around until I have some knowledge to transfer that to a more modern engine.

As I said, I don't know what it takes to put a game together so I think I will take a lot from this.


GfK(Posted 2013) [#8]
Well, as if to redress the balance, I tried Unity3D once and utterly hated it.

But to get back to the original question(s), I've used Blitz3D extensively since it was released twelve years ago, and while it's good, it does allow/encourage you to pick up a lot of bad habits. It's completely procedural by design, so if you decide to move on to something object-oriented later, you'll find you've spent a lot of time learning a language that you can't take very much from.

With that in mind I'd recommend Blitzmax. It's a week's pocket money more expensive but well worth the difference, and you can still do 3D stuff with the MiniB3D module, which is free. Plus, with Blitzmax being object-oriented, it'll put you on a good footing should you want to move on to something else in the future.

There are demo versions of both, give them a try.


RemiD(Posted 2013) [#9]
I have found that the blitz3d syntax is really easy to understand and to use contrary to the syntax of Unity3d or of others basic langages like Dark basic

If you want to learn the fundamentals of 3d programming, i still think that Blitz3d is very good for that. (except for shaders)

There are so many code examples and interesting concepts that i have found on these forums.

Of course you will be limited when you will be ready to publish your video game because you can only export for windows, and the 3d engine may not produce the right renders on some modern graphic cards. But to be honest, this does not happen in a few days, it can take a long time to finish a game.

Even if i am learning to use others 3d engines, i still use Blitz3d to create the prototype of the game, it is so easy and fast to code with this langage. Unity3d is so painful to use, i have to add my own functions to simplify the syntax because often it is so complicated to remember.


jfk EO-11110(Posted 2013) [#10]
Blitz3d is still great. There are a few free basic compilers that are supporting 3D to some Degree, but none of them has such a huge code archive. Their features are often impressive, yet are there only a very few screenshots and even fewer examples. But when you go to the Galery of blitz, you will realize quickly whats possible. Blitz3D saves your time and lets you focus on perfect graphics. The learning curve of Blitzmax may be a little steeper, but it will prepare you for object oriented coding, that is useful for a job in the industry. With B3D or BMax you can do Computer Games up to a Qualit of eg.: NOLF, Hitman 1,2, Deus Ex 1,2. Realtime Shadows aren't blitz's strength. For physics there are several third party addons.


*(Posted 2013) [#11]
Im with gfk on this another one you might want to look at is monkey, it too has a minib3d version for 3d rendering but will also allow you to write for mobile platforms with the full version :)

as for blitz3d its very dated now and tbh not worth the money your best bet is to look for something more current


Captain Wicker (crazy hillbilly)(Posted 2013) [#12]
Get BlitzMax, leave BB3D alone because it's outdated and programs made in b3d have problems on Windows 8 (the mouse cursor can be jumpy). I tried demo version of Monkey and it's just like BlitzMax, but with console support! Get either BlitzMax or Monkey.
or you could just stick with BlitzPlus


dawlane(Posted 2013) [#13]
You should leave Blitz3D alone for those reasons that are mentioned above.
This gives you a choice of getting Blitz Max or Monkey. Though Blitz Max has a few years left in it you should go for Monkey as it's being more actively developed and rumour has there is going to be an official 3D module (but then there was going to be one for Blitz Max that never got finished as you could just plug already made engines into it with a bit of work).

There hasn't been any update for Blitz Max for a while. Not only that, but Monkey is more flexible in the way it works as the code it generates has to be compiled by a external compiler such as Visual Studio Express; this means with a little know-how (tweaking the compilers project files) you can compile applications in to 64bit binaries (as long as the 64bit build tools are installed), this is something that Blitz Max and Blitz 3D cannot do.

The demo version of Monkey only compiles code for HTML-5 and you need a computer with a bit of power and google chrome or it looks choppy. You should be aware that HTML-5 support varies from browser to browser. Check the apps section on www.monkeycoder.nz many are in HTML-5 and it gives you some idea of what people are doing with Monkey.

The syntax for Monkey is very similar to that of Blitz Max and the only real down side to Monkey is that you have to implement your own collision detection methods.


RemiD(Posted 2013) [#14]

rumour has there is going to be an official 3D module (but then there was going to be one for Blitz Max that never got finished as you could just plug already made engines into it with a bit of work).


How a rumor can be better than a functional 3d engine ?


Check the apps section on www.monkeycoder.nz many are in HTML-5 and it gives you some idea of what people are doing with Monkey.


Exactly why i still use Blitz3d. I prefer 3d games.


the only real down side to Monkey is that you have to implement your own collision detection methods.


One more downside.


jfk EO-11110(Posted 2013) [#15]
i'm with RemiD here. Monkey may be great for crossplatform esp. on smartphones. But B3D is still the best easy and out-of-the-box working 3D solution and problems with windows 8 may be considered rumors and/or OS bugs.

Of course, with B3D you won't get DirectX11 stuff and therefor always get a bit of a retro ambience. At the other hand, creating a topselling Directx11 game these days means investments of several million dollars anyway.

btw. the fact that the monkey demo supports html5 only is why I didn't even try it yet.


dawlane(Posted 2013) [#16]
btw. the fact that the monkey demo supports html5 only is why I didn't even try it yet.
There is a reason why the demo is only html5. If Mark added any of the other targets then he may as well just give it away for free. It would be impossible for him to do any kind of demo with those targets because of how Monkey works.


jfk EO-11110(Posted 2013) [#17]
What does html5 mean at all? as a former webdesigner this sounds like javascript to me, so why an extra compiler. I certainly would have tried it when there was something for android, linux etc. in the demo. Because of how Monkey works? Not getting that one, wouldn't it be possible to make some trial restrictions?
Well since I know Blitz Research Products are good I probably would have bought it anyway, but I was running low on cash at that time.


Yasha(Posted 2013) [#18]
What does html5 mean at all? as a former webdesigner this sounds like javascript to me


HTML5 is usually used pretty much interchangeably with JavaScript. The new features since HTML4 make it far more suitable for apps and games rather than simply dynamic documents, without relying on nonstandard features.


I had been under the impression that the Monkey compiler was, at least initially, public domain, and that you paid for Mojo (if they're still calling it that). I can think of a whole load of ways this arrangement would allow for demos on other platforms... on the other hand what I can think of isn't important.

Demoing it with HTML5-only has a sensible reasoning behind it because it gets the point across that the produced apps are supposed to be identical everywhere: you aren't reliant on backends and should stop thinking about them.


dawlane(Posted 2013) [#19]
What does html5 mean at all? as a former webdesigner this sounds like javascript to me, so why an extra compiler.
It looks like javascript to me too, but you wouldn't be able to run it unless you was using a web browser using the API's introduced in the html5 standard. And Monkey isn't a compiler, it's a translator this is how it can be made to target other architectures and the reason why some things aren't implemented like pixel perfect collisions as some of the targets are just too slow to handle such things. Even the 3D module will be restricted to those targets that can handle it.

In short what monkey does is it takes your monkey source code, along the code in the modules (including what's in the native directory of that module) to construct a source file that can be used by the targets native compiler to build a native binary. In the html5 case it just out puts a javascript file with a html file to run it.

Not getting that one, wouldn't it be possible to make some trial restrictions?
It would if the source code for the main parts wasn't so readily available to the public, your only paying for the other targets in Mojo. And if those targets were available a clever person could figure out how it all works and write something in another language to get round any restrictions.


Yasha(Posted 2013) [#20]
Monkey is a compiler, not a translator. A translator is a "dumb" program like something you'd knock together using CPP macros that doesn't analyse the input and just does blind textual replacement. I am aware that Monkey uses "trans" and "translation" internally to refer to what it does: this simply means that its internal names are wrong. (A "translator" is a program that would accept an "If"/"Wend" block without complaint, for example, because it has no idea what it's doing.)

All compilers emit source. Some of them just happen to emit machine source rather than human-readable source. If it doesn't emit source, it is not a compiler, just a data processor of some kind. Observe that even BlitzMax exclusively converts human-readable source to human-readable source (FASM) rather than emitting any machine code, but nobody calls that one a translator.

(Caveat: I don't use Monkey. If it is a translator, y'all got scammed bigtime because translators are completely, completely worthless.)


jfk EO-11110(Posted 2013) [#21]
thanks for the replies everyone.
i remember, when i last time tried a for i=0;i<=10000000;i++, msie refused to to execute it because she thought is was stupid...actually the term was diffrentt . Anyway as I remember the various games wrote in javascript, I may try it nevertheless... ah wait, I would have to port it to monkey first...
how diffrent, compared to javascript is monkey at all, language-wise?


dawlane(Posted 2013) [#22]
Monkey is very much like BlitzMax language wise, but to use Mojo you have to extend the App class then you use this class as a program loop. You will find some video tutorials here http://www.monkeycoder.co.nz/Community/posts.php?topic=3318
This should give you some idea of the language.
I should point out that the demo version of Monkey is a few release behind the the pro version.


*(Posted 2013) [#23]
For me monkey does seem to be getting there slowly and does look like a contender for the blitzmax crown yeah its not there 100% yet for the desktop targets but it is getting there with every iteration. On the whole yes there are loads of different languages or game engines out the but monkey is a good alternative to loads of them one big plus is it has a friendly community that is growing steadily but surely :)

unfortunately max is slowly getting lost by the wayside due to lack of advancement which is a shame as that is a language that i did like a lot :\ BRL has moved over to monkey now and the change shows by the masses of upgrades it gets and the roadmap plan for it :)


jfk EO-11110(Posted 2013) [#24]
thanks everybody for the information about MONKEY. Now let's get back to the initial topic.

I'd conclude as follows: Get yourself the free Demo of Blitz3D. About making FPS Shooters you should know that a lot of work goes into 3D modelling and animation, that usually is not done in Blitz3D, but in external tools, such as Blender, 3Dsmax, Maya and many more and which is a whole Science field by its own. You can spend decades in getting good in this. I did however code my first one level fps in two weeks, using some generic models. actually I had to remove it fr,m my site, but the second version is still online, csp fps engine demo 2, if you want to give it a try.

if you like blitzplus then you will love blitz3d. tho, no windows gui in blitz3d, you will have to use third party guis or brew your own one...something i always loved to do. also note the ongoing windows8 fullscreen compatibility discussion in blitz3d forum section.


RemiD(Posted 2013) [#25]

also note the ongoing windows8 fullscreen compatibility discussion in blitz3d forum section.


Maybe a sign of the end of Blitz3d.

Or i can be a fanboy and say that windowed apps are better ;)

Seriously how cool is that : :D



jfk EO-11110(Posted 2013) [#26]
Maybe a sign of the end of windows. like when your car used to drive 200'000 miles and now starts to make strange sounds. Then at least people wouldn't be surprised when your game says "please downgrade to the last working os version".


Yue(Posted 2013) [#27]
Users of these forums Blitz3D suffers from paranoya, initially was now windows 7 with windows 8.