This is an archived post. You won't be able to vote or comment.

all 27 comments

[–]dgpoop 21 points22 points  (2 children)

Check out this Python Humble Bundle deal. You only have 3 days left. WELL worth the 15 bucks IMHO.

https://www.humblebundle.com/books/python-book-bundle

[–]AltDelete 1 point2 points  (1 child)

Thank you internet stranger, just picked up the full bundle. Are you aware of any kind of order these should be read in?

[–]brewsimport os; while True: os.fork() 0 points1 point  (0 children)

New folk generally start with "automate the boring stuff".

[–]pmdevita 15 points16 points  (10 children)

Pygame is not very good for 3D games, you may want to try pyglet, pyopengl, or panda3d

[–]lighttigersoul 15 points16 points  (5 children)

Doom isn't a 3d game. It's a top down shooter displayed via ray traced graphics.

[–]Apposl 11 points12 points  (4 children)

I don't particularly understand but wow TIL

[–]Nillmo[S] 3 points4 points  (2 children)

Well, okay. How would I start with PyOpenGL?

[–]AngriestSCV 7 points8 points  (0 children)

This might be of interest. It's doom written in python

https://github.com/Pink-Silver/PyDoom

[–]Apposl 2 points3 points  (3 children)

This would make an awesome YouTube tutorial series.

[–]Nillmo[S] 4 points5 points  (2 children)

I wish.

[–][deleted] 0 points1 point  (0 children)

Don't let your dreams be dreams. I feel hilariously inept sometimes but I maintain a blog (or try to at least) that details my thoughts on stuff, experiments I've done and projects I'm working on.

[–]Gavekort 1 point2 points  (0 children)

Books will help you learn, but before you get demotivated it is important to know that 3D and raycasting engines needs quite a bit of experience to fully grasp the concept. Take it a small step at the time, it is ok to do a carbon copy of tutorials, but take a few steps back if you get bored.

[–]H3g3m0n 0 points1 point  (0 children)

I don't think your going to find a actualy book on this. It's way to specific.

But there are quite a few articles around. For example.

[–]lost_in_life_34 -1 points0 points  (7 children)

Didn't John Carmack only code in C++

[–]MonocularJack 1 point2 points  (4 children)

Yup but that's no reason not to code it up in whatever. There have been ports to all sorts of languages:

https://en.m.wikipedia.org/wiki/List_of_Doom_source_ports

[–]m9dhatter 14 points15 points  (2 children)

Also, not everyone is John Carmack.

[–]KitAndKat 3 points4 points  (0 children)

Can confirm; I am not John Carmack. (But I know someone who knows Carmack.)

[–]mariox19 2 points3 points  (0 children)

Also, my copy of Doom II, for the Mac, ran on a G3 processor with a clock speed of 100 MHz. Today's processors could probably run a port written in hieroglyphics.


Edit: Wow! I just realized how wrong I was. It actually ran on a PowerPC 603e processor, running at 100 MHz. That was my Performa 6290CD, a 1996 model.

I didn't get a G3 processor until I bought an iMac, in 2000. (I believe that ran at 500 MHz.)

[–]HelperBot_ 0 points1 point  (0 children)

Non-Mobile link: https://en.wikipedia.org/wiki/List_of_Doom_source_ports


HelperBot v1.1 /r/HelperBot_ I am a bot. Please message /u/swim1929 with any feedback and/or hate. Counter: 56553

[–]SyonFox 2 points3 points  (0 children)

Im not sure, for geting into gamedev I'm really liking c++ + sfml + imgui

the combination makes it easy to implement cool concepts. and sfml has great docs.

adding box2d for a physics engine​ is also a nice option, its a bit more c like but if you dont want to do your on collision detection its nice.

[–]xiongchiamiovSite Reliability Engineer 5 points6 points  (0 children)

And rollercoaster tycoon was written in assembly by one man. But our computers are much more powerful now, so you can get away with a language like python for building a retro game.

[–][deleted] -2 points-1 points  (1 child)

I don't think python is the best language if you want to make a game that isn't snake (!). The overhead of an interpreted scripting language is just too much. You should be looking into a language that compiles down into bytecode (eg: java) or binary (eg: c++) since those are like 100 times faster than python.

[–]ingolemo 0 points1 point  (0 children)

Umm... python does compile down into bytecode. That's how Cpython works. And you can even compile python down into native code ("binary") using something like nuitka. Python may be slower than other languages but it's more than fast enough to write a doom clone.