Author Topic: 3D Game Tutorials  (Read 5217 times)

0 Members and 1 Guest are viewing this topic.

Offline BlakPilar

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 734
  • Rating: +44/-1
    • View Profile
3D Game Tutorials
« on: June 10, 2012, 03:59:49 pm »
Now, I'm sure everyone is aware of the numerous game and rendering engines that exist today, such as OpenGL/OpenTK, Unity, CryEngine, XNA, LWJGL, and many others, but if you're like me, you've wanted to know all of what's going on behind the scenes. I was content to just use those third-party libraries, but my main curiosity was how everything was being done. I've finally found a tutorial that creates a 3D engine from scratch while explaining what's going on and why. Though it is completely software based (i.e. no hardware acceleration, and framerate will depend on processors), the creator, Yan Chernikov aka The Cherno, goes through every step and explains everything thoroughly. So far I'm on episode 21, but there are 33 total and the series is still in active development. If TheCerno sticks with what he's said in one of his videos, he will make a tutorial on how to use LWJGL or some other third-party game engine after this series is complete.

I've attached a picture of what my engine could render at the end of episode 20. If you're interested in following along, you can find the series here. As a note, you do need to know at least some Java before starting this tutorial, but in the first six or so episodes he does explain what certain things are and what they do (such as a brief explanation on bit-shifting, and other bit operators (& and |)).
EDIT: Also, as far as I can tell, this can be ported to .NET WinForms by using a Bitmap that's had its bits unlocked, and C++ using QuickGC.
« Last Edit: June 10, 2012, 04:02:49 pm by BlakPilar »

Offline ben_g

  • Hey cool I can set a custom title now :)
  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1002
  • Rating: +125/-4
  • Asm noob
    • View Profile
    • Our programmer's team: GameCommandoSquad
Re: 3D Game Tutorials
« Reply #1 on: June 10, 2012, 04:04:26 pm »
Looks nice. Do you draw everything pixel by pixel or do you use one of java's build-in methods to render the textures?

Also 52 fps sound a bit slow. Does the framerate drops much when you add more models?
My projects
 - The Lost Survivors (Unreal Engine) ACTIVE [GameCommandoSquad main project]
 - Oxo, with single-calc multiplayer and AI (axe) RELEASED (screenshot) (topic)
 - An android version of oxo (java)  ACTIVE
 - A 3D collision detection library (axe) RELEASED! (topic)(screenshot)(more recent screenshot)(screenshot of it being used in a tilemapper)
Spoiler For inactive:
- A first person shooter with a polygon-based 3d engine. (z80, will probably be recoded in axe using GLib) ON HOLD (screenshot)
 - A java MORPG. (pc) DEEP COMA(read more)(screenshot)
 - a minecraft game in axe DEAD (source code available)
 - a 3D racing game (axe) ON HOLD (outdated screenshot of asm version)

This signature was last updated on 20/04/2015 and may be outdated

Offline BlakPilar

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 734
  • Rating: +44/-1
    • View Profile
Re: 3D Game Tutorials
« Reply #2 on: June 10, 2012, 04:09:42 pm »
You use Java's BufferStrategy along with Graphics and a BufferedImage to render everything, but it's technically pixel-by-pixel. As for the FPS, I'm on my laptop with several other programs running at the moment. I get between 60 and 65 when only Eclipse and the program are running. If I were to take away those three walls, there'd be no noticeable change because TheCherno does it in a pretty efficient manner as far as I can tell. (Plus he even openly admits that some of the rendering is from Notch's code because you can completely customize what is being rendered.)

Offline Scipi

  • Omni Kitten Meow~ =^ω^=
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1547
  • Rating: +192/-3
  • Meow :3
    • View Profile
    • ScipiSoftware
Re: 3D Game Tutorials
« Reply #3 on: July 02, 2012, 07:01:40 am »
I cannot believe I missed this. I'm definitely going to follow these tutorials, I've been wanting to get into 3D programming period, and this will most likely help! :D

Imma Cat! =^_^= :3 (It's an emoticon now!)
Spoiler For Things I find interesting:
Spoiler For AI Programming:
Spoiler For Shameless advertising:

Spoiler For OldSig:





Spoiler For IMPORTANT NEWS!:
Late last night, Quebec was invaded by a group calling themselves, "Omnimaga". Not much is known about these mysterious people except that they all carried calculators of some kind and they all seemed to converge on one house in particular. Experts estimate that the combined power of their fabled calculators is greater than all the worlds super computers put together. The group seems to be holding out in the home of a certain DJ_O, who the Omnimagians claim to be their founder. Such power has put the world at a standstill with everyone waiting to see what the Omnimagians will do...

Wait... This just in, the Omnimagians have sent the UN a list of demands that must be met or else the world will be "submitted to the wrath of Netham45's Lobster Army". Such demands include >9001 crates of peanuts, sacrificial blue lobsters, and a wide assortment of cherry flavored items. With such computing power stored in the hands of such people, we can only hope these demands are met.

In the wake of these events, we can only ask, Why? Why do these people make these demands, what caused them to gather, and what are their future plans...

Offline aeTIos

  • Nonbinary computing specialist
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3915
  • Rating: +184/-32
    • View Profile
    • wank.party
Re: 3D Game Tutorials
« Reply #4 on: July 02, 2012, 07:45:11 am »
Oh wow :D Thanks a lot!
I'm not a nerd but I pretend:

Offline BlakPilar

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 734
  • Rating: +44/-1
    • View Profile
Re: 3D Game Tutorials
« Reply #5 on: July 02, 2012, 11:34:14 am »
He's still a student, and kind of stopped right before collision with the actual 3D part, but just from there it really helped me. I've found another tutorial by thecplusplusguy for 3D. He does it with OpenGL, SDL, and C++, but I've been following along with Tao and C#. He explains everything really well, and it's very helpful.
« Last Edit: July 02, 2012, 11:35:22 am by BlakPilar »

Offline Scipi

  • Omni Kitten Meow~ =^ω^=
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1547
  • Rating: +192/-3
  • Meow :3
    • View Profile
    • ScipiSoftware
Re: 3D Game Tutorials
« Reply #6 on: July 02, 2012, 03:56:18 pm »
Once I finish the Java tutorials, then I'll definitely look through those C++ ones! :D

Just finished the fourth video, already solidifying info I learned in my Java course. :P

Imma Cat! =^_^= :3 (It's an emoticon now!)
Spoiler For Things I find interesting:
Spoiler For AI Programming:
Spoiler For Shameless advertising:

Spoiler For OldSig:





Spoiler For IMPORTANT NEWS!:
Late last night, Quebec was invaded by a group calling themselves, "Omnimaga". Not much is known about these mysterious people except that they all carried calculators of some kind and they all seemed to converge on one house in particular. Experts estimate that the combined power of their fabled calculators is greater than all the worlds super computers put together. The group seems to be holding out in the home of a certain DJ_O, who the Omnimagians claim to be their founder. Such power has put the world at a standstill with everyone waiting to see what the Omnimagians will do...

Wait... This just in, the Omnimagians have sent the UN a list of demands that must be met or else the world will be "submitted to the wrath of Netham45's Lobster Army". Such demands include >9001 crates of peanuts, sacrificial blue lobsters, and a wide assortment of cherry flavored items. With such computing power stored in the hands of such people, we can only hope these demands are met.

In the wake of these events, we can only ask, Why? Why do these people make these demands, what caused them to gather, and what are their future plans...

Offline BlakPilar

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 734
  • Rating: +44/-1
    • View Profile
Re: 3D Game Tutorials
« Reply #7 on: July 03, 2012, 01:01:47 am »
Yeah, he assumes most of the people who go to watch his tutorials are those kinds of people who skip over the basics and go straight to the hard stuff then complain when they don't understand it lol.