HardwareHeaven.com

HardwareHeaven.com

Looking for the skin chooser?
 
 
  • Home

  • Hardware reviews

  • Articles

  • News

  • Tools

  • Gaming at HardwareHeaven

  • Forums

 

Go Back   HardwareHeaven.com > Forums > Software Discussion > General Software Discussion


General Software Discussion Got a problem with an application? This is the place for all your software and tweaking questions.

Reply
 
Thread Tools
Old Jul 2, 2002, 10:38 PM   #1
Unbiased.
 
Join Date: Jun 2002
Posts: 4,812
Rep Power: 0
ToshiroOC will become famous soon enough

Default Post How difficult is 3d engine programming?

Some of my friends and I want to start programming games, and we have a dispute that the informed and educated people of the forum might be able to answer - I believe that it would be possible to make our own proprietary 3d engine/editor using only free time over 3 years, while another friend of mine thinks that I'm utterly insane to think that we could even start to comprehend any 3d programming from where we are, which is very fluent in a lot of programming languages useless for this task (ti-82 basic/asm anyone? and vb and python and all sorts of languages that will never end up being used in a 3d engine...) and enough c++ to make simple MSDOS programs. Anyone have any good solid idea about how hard it would be to make an entire 3d engine (definitely NOT something on a doomIII level, but hopefully a bit beyond quake2) from scratch, and do you think it would be possible with an estimated 3000-4000 man-hours of work? Thanks to anyone who responds...

ToshiroOC
__________________
[color=White]Peace be with you, Joe.[/color]
Driverheaven Staff Member (Supermoderator)
ToshiroOC is offline   Reply With Quote


Old Jul 5, 2002, 03:43 AM   #2
l33t
 
Join Date: May 2002
Posts: 248
Rep Power: 0
Impulse is on a distinguished road

Default Post

[SIZE=x-small]Game Programming is very hard. You need to know a lot of knowlede, as I recall an article about Game Programming, DirectX API, OpenGL Win32 Programming (Depends), C++, etc. You cannot create a game engine w/o any of such knowledge of hard Programming languages, if you wanna get started on one, you could either purchase a game engine like ID Software's Q1, Doom, etc. So just basically the stuff you need to know about Game Programming. And its really hard and thats where paitiance comes in.[/SIZE]
Impulse is offline   Reply With Quote
Old Jul 5, 2002, 03:56 AM   #3
A Legend in Underwear
 
UberLord's Avatar
 
Join Date: May 2002
Location: Unknown
Posts: 5,255
Rep Power: 0
UberLord will become famous soon enough

Default Post

Why must developers constantly re-invent the wheel?

You want to make you're own engine - kudos if you can do it. Personally, I'd download the Quake 2 GPL source code and start building a game on that
__________________
Gentoo Linux - Developer (baselayout)
Read my blog

"I contend that we are both atheists. I just believe in one fewer god than you do. When you understand why you dismiss all the other possible gods, you will understand why I dismiss yours."
Stephen Roberts
UberLord is offline   Reply With Quote
Old Jul 6, 2002, 08:49 AM   #4
l33t
 
Join Date: May 2002
Posts: 248
Rep Power: 0
Impulse is on a distinguished road

Default Post

[SIZE=x-small]Work on a Game MOD first, then you can get used to the basic Game/Programming itself. Quake 3, Half-Life, Dungeon Siege MODS. Just a thought [/SIZE]
Impulse is offline   Reply With Quote
Old Jul 6, 2002, 09:17 AM   #5
Colour Commentator
 
digitalwanderer's Avatar
 
Join Date: May 2002
Location: Highland, IN USA
Posts: 5,619
Rep Power: 0
digitalwanderer will become famous soon enough

Donator
Default Post Mod first.

I definately agree with all the people telling you to make a couple of mods first or to download Q2 and modify the hell out of that. It's free to make a game using the Q2 engine...as long as you don't charge for it. The Carmack is just too cool for words. ("All praises and big ups to the Carmack!")


Building a 3D game engine from scratch is an insanely difficult task to undertake, don't have any preconceived notions of it being otherwise going into it! 3000-4000 manhours might sound like a lot, but Q2 took more like 30k-40k manhours! (I'm just wild-assed guessing here, but I know it was a goodly sized team working over a number of years...and that was with a decade of 3D engine building under their belts already!)

Dude, you SO seriously don't want to try and undertake that if'n you're ever hoping to get a functioning game out some day. Get your buds together and make a total conversion mod first just to get an idea of what you're getting yourself into.

I've always wanted to do some level design myself, but I'm still waiting for that "as time allows" thing to kick in.
__________________
WTF is up with the sigs?
digitalwanderer is offline   Reply With Quote
Old Jul 6, 2002, 09:07 PM   #6
Junior
 
Join Date: May 2002
Location: Wave Existence
Posts: 2,065
Rep Power: 0
DallasStar is on a distinguished road

Default Post

If it just "you and a couple of friends" with experience in other programming that is not related to game engine programming, I'd say your best bet would be to read that Quake source code and get a good feel for the code by modifying it and experimenting (and get a guide of some sort to help you if you need it). Then, aim for 5 years. You'd need a larger team for just 3 years.


just in case anyone cares:

In my 3rd year highschool AP Computer Science class, we'll be making a game engine (and games to go with it of course). It supposed to be pretty high level. Up to the level of Tribes and the likes. I'm not quite sure if we're going to build it from scratch or just continue from the work of others (the latter being more likely).
__________________
"A picture of my existence... would show a useless wooden stake covered in snow... stuck loosely at a slant in the ground in a ploughed field on the edge of a vast open plain on a dark winter night." --- Franz Kafka
DallasStar is offline   Reply With Quote
Old Jul 7, 2002, 11:21 PM   #7
Hydrogenated Dumbass
 
Join Date: May 2002
Location: Canuckland
Posts: 755
Rep Power: 0
HsuGotaQ is on a distinguished road

Donator
Default Post Re: How difficult is 3d engine programming?

Quote:
Originally posted by ToshiroOC
... while another friend of mine thinks that I'm utterly insane to think that we could even start to comprehend any 3d programming from where we are, which is very fluent in a lot of programming languages useless for this task (ti-82 basic/asm anyone? and vb and python and all sorts of languages that will never end up being used in a 3d engine...) and enough c++ to make simple MSDOS programs.
You need at least a good knowledge of 3D programmation in order to properly start a 3D game engine development from scratch. Just the game design (not coding) will take you at least a good 8 months (an estimate based on your present coding knowledge). The fact that you guys will not be giving 100% of your time on this won't help either. Like pretty much everybody else said, start by making mods before hand to comprehend the structure and logic of modern game engines. This will probably save you years of programming. Good luck.
HsuGotaQ is offline   Reply With Quote
Old Jul 7, 2002, 11:25 PM   #8
Hydrogenated Dumbass
 
Join Date: May 2002
Location: Canuckland
Posts: 755
Rep Power: 0
HsuGotaQ is on a distinguished road

Donator
Default Post

Oh.... forgot this.

If you are to program from scratch and need some help or pointers, i'd suggest (if necessary or helpful) to check out some OpenGL tutorials over at NeHe Productions. They have been pretty usefull for me in the last 4 months.

- http://nehe.gamedev.net/
HsuGotaQ is offline   Reply With Quote
Old Apr 30, 2003, 11:26 PM   #9
DriverHeaven Junior Member
 
Join Date: Apr 2003
Location: Midway City, California
Posts: 22
Rep Power: 0
Dalik is on a distinguished road

I am gussing you dont have any experience with making games. The problem I see with your situation is this.

You have no experience with making anything game relation on the graphics side. You have friends that are interested and you say you know a bunch of languages. With a 3d game engine you will need advanced maths. From trig, to calc, to a few others. You will also need a background in physics. If you got all that, or working on it then, yes its possible. You should be able to load a BSP level and run around with some ugly weapons and some bad guys. It should only take you a few months.

What I would do is start with some 2d programming, its a lot easier and you will get stuff done and done fast, so you feel like your getting somewhere. For one you will get an idea how games work, and you will know you have "completed" a game or two. Depending on the API you wanna use. Get a book on that topic and start reading.

Its not easy and you will get mad at times, but its fun. But depending on how you wanna go, I wish you the best and goto www.gamedev.net

I think these API's are good to use
SDL (2d, input, sound) also has helper libs for more sound and graphic loading, also network play.
opengl ( 3d )

you can use opengl in SDL also.

Good luck
Dalik is offline   Reply With Quote
Old May 1, 2003, 03:47 PM   #10
A Legend in Underwear
 
UberLord's Avatar
 
Join Date: May 2002
Location: Unknown
Posts: 5,255
Rep Power: 0
UberLord will become famous soon enough

Did you ever get started on this Toshiro?
__________________
Gentoo Linux - Developer (baselayout)
Read my blog

"I contend that we are both atheists. I just believe in one fewer god than you do. When you understand why you dismiss all the other possible gods, you will understand why I dismiss yours."
Stephen Roberts
UberLord is offline   Reply With Quote
Old May 1, 2003, 09:45 PM   #11
DriverHeaven Newbie
 
Join Date: May 2003
Location: Slovenia, Koper
Posts: 13
Rep Power: 0
Area_51 is on a distinguished road

Something about programing games and team

1. You must have a good team: programer 2-3, artist (more is better), voice and sound maneger and ....
2. If you are trying to make a game 3D engine and if you area begginer in that thing is better that you start in OpenGl.
3. A lot of knowladge like most of them said.
4. Lot of time and good nerves.


First make a good 2d engine than go to bad 3d engine and then make a really, really good 3d engine.

This are my advices, at leaset in Slovenia (not SLovakia) some teams that I know they are doing on that way.

Anyway good luck at programing
__________________
ATI, Is the One
Area_51 is offline   Reply With Quote
Old May 1, 2003, 10:40 PM Threadstarter Thread Starter   #12
Unbiased.
 
Join Date: Jun 2002
Posts: 4,812
Rep Power: 0
ToshiroOC will become famous soon enough

The friends I was planning to work with on this gave up (coughcowardscough) so I've been sorta dabbling around on my own. Once summer starts I'll have plenty of time and at the very least try to get a decent 2d game done. I haven't directly started programming this yet, but I have written a few other small things to practice
__________________
[color=White]Peace be with you, Joe.[/color]
Driverheaven Staff Member (Supermoderator)
ToshiroOC is offline   Reply With Quote
Old May 1, 2003, 10:44 PM   #13
DriverHeaven Junior Member
 
Join Date: Apr 2003
Location: Midway City, California
Posts: 22
Rep Power: 0
Dalik is on a distinguished road

I heard OpenGL was a lot easeir to program for and another tip, write out your ideas on paper and make flow charts. This will make everything much clearer for you and it also makes you see your design on paper, that means it might work in your head but not on paper etc..
Dalik is offline   Reply With Quote
Old May 1, 2003, 10:49 PM Threadstarter Thread Starter   #14
Unbiased.
 
Join Date: Jun 2002
Posts: 4,812
Rep Power: 0
ToshiroOC will become famous soon enough

Thanks everyone for the help I have flowcharted a couple of programs before, I love doing blackboxing where I just draw an arrow into a function block, write what the input and output is, and then figuring out what fits in the function without having to worry too much about the whole picture
__________________
[color=White]Peace be with you, Joe.[/color]
Driverheaven Staff Member (Supermoderator)
ToshiroOC is offline   Reply With Quote
Old May 27, 2003, 03:35 PM   #15
DriverHeaven Newbie
 
Join Date: Mar 2003
Location: BRUSSELS
Posts: 17
Rep Power: 0
daffy is on a distinguished road

opengl is all about maths baby
__________________
Heaven doesn't want me and hell is afraid i'll take over.
daffy is offline   Reply With Quote
Old Jul 11, 2003, 04:05 PM   #16
DriverHeaven Newbie
 
Join Date: Jul 2003
Location: Bedford England
Posts: 15
Rep Power: 0
Private Pyle is on a distinguished road

Writing ur own engine is madness when there are so many around, even for high level languages such as Delphi
__________________
Private Pyle is offline   Reply With Quote
Old Mar 25, 2014, 11:28 PM   #17
HardwareHeaven Newbie
 
Join Date: Mar 2014
Posts: 6
Rep Power: 0
ZnMnSe is on a distinguished road
System Specs

Smilie AW: How difficult is 3d engine programming?

Difficult enough not to pull it out of a hat!
If you're technically fit or willing to learn and it's at first about the game
engine itself and the goal engine is something of the level of quake 2 i think it would be possible. But aware, you must learn a lot about 3D rendering first, or you will never make it.
I believe basic c++ knowledge would suffice (no one needs to know what
classes, methods and attributes are, you could program a whole engine
with procedural c code if you wanted).
For 3D Engine you must decide which API to use (OpenGL like quake 2 or
Direct3D like Tomb Raider: The Last Revelation), or if you even want to program a software 3D renderer (which is more difficult than using the APIs) or a Raytracing Engine. For the game engine you need to learn something about the subengines too, like Sound (again DirectSound or the Windows API or APIs like OpenAL or Miles Soundsystem), Input (DirectInput or Windows API), Network if you plan something you can play over the internet, Physics, Advanced Intelligence, Level Management (Binary Space Partitions? Octrees? Portal Engine? Or some Voxel-based Management?), Scripting if you want your engine to be modifiable in behaviour.
For a whole game with engine AND stuff like levels, textures, sounds, scripts
etc. 3000 - 4000 man-hours will definitely not be enough.

That's my opinion, guys.
ZnMnSe is offline   Reply With Quote
Old Mar 26, 2014, 04:06 AM   #18
Obvious Closet Brony Pony
 
Judas's Avatar
 
Join Date: May 2002
Location: 100 miles from anywhere
Posts: 34,536
Rep Power: 432
Judas is godlike in his statusJudas is godlike in his statusJudas is godlike in his statusJudas is godlike in his statusJudas is godlike in his statusJudas is godlike in his statusJudas is godlike in his statusJudas is godlike in his statusJudas is godlike in his statusJudas is godlike in his statusJudas is godlike in his status
System Specs

Gold Member
Re: How difficult is 3d engine programming?

Thread resurrection detected..




BITING




I spent over 500 hours or more using an already constructed engine and just assembling assets and creating textures alone when I was creating the quake prepack... doing some basic level code changes and modifications with scripts and stuff....


hours and hours of work....


I've been watching a small group of people develop their own game using an already basic level game engine (modifying it and making it their own essentially) and this group of people which isn't exactly small have been going at it for near 3+ years and still are nowhere near ready for launch.
__________________
Quote:
I accidently my Reputation
Judas is offline   Reply With Quote
Old Mar 29, 2014, 08:40 AM   #19
HH's Asteroids' Dominator
 
Trusteft's Avatar
 
Join Date: Nov 2004
Location: Hellas->Macedonia->Thessaloniki
Posts: 15,753
Rep Power: 660
Trusteft is godlike in his statusTrusteft is godlike in his statusTrusteft is godlike in his statusTrusteft is godlike in his statusTrusteft is godlike in his statusTrusteft is godlike in his statusTrusteft is godlike in his statusTrusteft is godlike in his statusTrusteft is godlike in his statusTrusteft is godlike in his statusTrusteft is godlike in his status
System Specs

Gold Member
Re: How difficult is 3d engine programming?

Unless you have a seriously good reason to do so, there is no point in building an engine from scratch. It's a waste of time, which means a waste of money. In the end you may even end up with something that is simply not good enough.
__________________
Formerly BlueMak

The people who are regarded as moral luminaries are those who forego ordinary pleasures themselves and find compensation in interfering with the pleasures of others(Bertrand Russell)"You go into Afghanistan, you got guys who slap women around for five years because they didn't wear a veil,You know, guys like that ain't got no manhood left anyway. So it's a hell of a lot of fun to shoot them." - Lt. Gen. James N. Mattis
This is slavery, not to speak one's thought. [Euripides-The Phoenician Women (c.411-409 B.C.)] http://www.macedonia.info/FALLACIESANDFACTS.htm
Sic semper tyrannis.
Trusteft is online now   Reply With Quote
Old Apr 15, 2014, 10:44 AM   #20
HardwareHeaven Addict
 
WxMan1's Avatar
 
Join Date: Dec 2007
Posts: 261
Rep Power: 56
WxMan1 has a brilliant futureWxMan1 has a brilliant futureWxMan1 has a brilliant futureWxMan1 has a brilliant futureWxMan1 has a brilliant futureWxMan1 has a brilliant futureWxMan1 has a brilliant futureWxMan1 has a brilliant futureWxMan1 has a brilliant futureWxMan1 has a brilliant futureWxMan1 has a brilliant future

Re: How difficult is 3d engine programming?

Its simple: take X,Y,Z co-ordinates and translate them into another co-ordinate reference using simple Eucledian geometric transforms.

For example, a cloud of point masses interacting with gravity, inertia, and hydrodynamic / aerodynamic elasticity, would require a programmer to merely invoke magik func(); it all works out.
WxMan1 is offline   Reply With Quote
Reply

Thread Tools