3D and GLB

Previous topic - Next topic

SnooPI

I see that a lot of people are more and more interested in 3D on this forum.
Maybe I and others could make a bunch of new 3D routines in tutorial format to help beginners.
I don't have a lot of time right now but if there is demand ...  ;)

If 3D pros are interested, we could set it up.

SnooPI

I'm just clarifying one thing, the basic functions of GLB in 3D are rudimentary.

For example, you will never be able to create a real 3D sound engine.
For example, you will never be able to do a real lightmapping.
Etc ..

It lacks basic functions in GLB for this.
For that you will have to use the (strong) INLINE function and so, your program will probably no longer be cross-platform.
This is an important detail for many, I think.

erico

It could be.

I have done very little with GLB in 3d but it is within my plans to do so, in my case, all that it currently offers are more than enough.
My plan is for retro games using it, no shaders or fancy stuff, 3d rendered to 320x240.

Timewise, I´m sure I can give a bit of a hand on whatever is needed.

SnooPI

You are welcome Erico.

Yes it can be nice a retro 3D pixelated game and indeed for that the basic functions of GLB are sufficient.

We could use this as a basis for the tutorial, it would be a 3D mini-game with well commented code that we will improve as the tutorial progresses.
I had also thought of Gernot's game as a basis : (The Legend of) Teader  ;)


erico

It could be, there is already a layout to base stuff on but it seems to be a little big game with lot´s details and stories, etc.
What about more easy stuff? Like twisted remakes of simple arcade games within different genres?

Schranz0r

#5
It's hard to compete against other languages in 3D.
GLBasic with it's routines in 3D are not worth to use for me.
If i do 3D, i use OpenGL and C++ Inline.

From that point could a user say: Why using GLBasic for that and not C++ and OpenGL in VS...


Two ways to go, i would say:
1. Renew 3D in GLB from ground up.
2. Give a dang, leave it as is and drop future support.

I <3 DGArray's :D

PC:
AMD Ryzen 7 3800X 16@4.5GHz, 16GB Corsair Vengeance LPX DDR4-3200 RAM, ASUS Dual GeForce RTX™ 3060 OC Edition 12GB GDDR6, Windows 11 Pro 64Bit, MSi Tomahawk B350 Mainboard

erico

It sure won´t compete directly with the likes of modern 3d engines, but I enjoy having simple 3d support, otherwise I would have to go about creating my own inside GLB since I can't C++.
It is quick for visualization and I think quite possible to create ELITE type games, flat polygons maybe even line polygons, racers, etc.

SnooPI

SchranzOr, me too now I mostly use GLB when I code in C++  :)  (that's also why I don't really like using the Steam version)

I don't fully agree with both of you that GLB cannot compete with modern 3D engines.
With the INLINE function, GLB has no real limit.

Going back to the tutorial... Erico, your idea of ​​making a twisted classic arcade game is a good one.
In fact, I was thinking of doing tutorials 1, 2, 3, etc ... which each time tackle different and more and more complex subjects (using for each new tutorial the things learned in the previous tutorial) then at the end make a game with these tutorials as a basis.

In the next few days I will start by making a Topic in "3D-snippets" with 1 or 2 tutorials that I would put in a .ZIP and everyone can add their tutorial.
The moderators can even add them directly to the .ZIP or even modify them if they are incomplete, buggy or poorly commented.

I don't know if I am very clear but I hope everyone understood me  ;)
If you agree, we do it like this.

erico

Yep, I´m fine with the idea.

Quote from: SnooPI on 2020-Jul-31
...I don't fully agree with both of you that GLB cannot compete with modern 3D engines.
With the INLINE function, GLB has no real limit...

I meant the standard 3d stuff, not the inline.
It might be a bit hard to create tutorials with little complete games in a sense they evolve, like you learn one to do the next.

Qedo

@SnooPI
online also works on the Steam version or are there bugs that I don't know about?

SnooPI

Quote from: erico on 2020-Jul-31
It might be a bit hard to create tutorials with little complete games in a sense they evolve, like you learn one to do the next.
I don't quite understand what you mean Erico  O_O
In these tutorials, we will first discuss the basics of 3D (camera, camera movement, light, display of 3D objects, etc ...) these tutorials are first for beginners so they must start with the basics.
We will not be making a game in each tutorial, it will be at the end that we will make a game based on all these tutorials.

Otherwise it's cool that you like the idea in general  :good:
I think it will help a lot of people in 3D (the new ones but also the old ones with the more advanced tutorials).

Qedo no, no, there is no problem with the INLINE function in GLB 16, it's just a problem we had discussed in the bonus section some time ago  ;)

SnooPI

I just thought of something:

Should we use Gernot's 3D entity system (T3DEntity) for the tutorials?

This is an important choice because it will then also be used for the final game.
Personally I think it would be a good idea but I'm not sure, so I'd like to know your view,

erico

Oh now I understand you better.
What I meant was, say, the very fundamentals could lead to a PONG 3d game, but in a shufflepuck cafe styled way, then more tutorials could lead to a top down viewed game, like frogger, then more tutorial could lead to an asteroid s kind of stuff. That is what I mean, every few 3d command explanations could lead to an example game. If this all could be in videos, the better, but I know that is more work.

SnooPI

The problem with the tutorials only as a mini-game is that it will be less clear to beginners because there will be a lot of code in each tutorial.
Moreover, a simple 3D game already covers some quite complex functions (like collisions and collision responses etc.) not just the basics.

Another advantage of doing this in the form of normal tutorials is that anyone can add their own tutorial without having to make a full game.

Nevertheless your idea is interesting, but in this case these mini-games will have to be developed in parallel with the normal tutorials and therefore it will require more work (especially if it has to be done with videos).

Otherwise, you think it's a good idea to use T3DEntity?

erico

I´d think it is, is it cross compatible?