PDA

View Full Version : How long for an engine approx ?



Crusader
09-04-2000, 03:33 PM
It's not the best place to ask this but I needed advises from advanced experts :

How long will it take in your opinion to make this kind of engine ?

-An {C++/GL} Editor & Engine :
*BSP trees (de/)compiling in ASM
*Portal visibility (de/)compiling in ASM
*Light (de/)compiling in ASM
*Nurbs solids

*Parametric skeletals animations
*Advanced physics system
*DInput(opt)

# Here is my knowledge : C++ (150 hours), GL (100 hours on VB), DX (25 hours in VB), NO ASM knowledge. #

http://www.opengl.org/discussion_boards/ubb/wink.gif Idea always come, but tell me if reality is not enabled for my kind of programmer...

Do you think I could get descent results in 4-6 months (I'm working on it all day and I'm a math student (17 y/old)... it's my only work in life). I need to learn also ASM.
??

-All this at possible speeds and display such for movement.

Thank you,
Dave

[This message has been edited by Crusader (edited 09-04-2000).]

09-04-2000, 05:21 PM
You can get something, but that something
certainly won't be a commercial quality
engine.

If I were tasked with an engine AND an
editor, I'd say "gimme three senior guys
in addition to myself, and two years." Of
course, half of that time would probably be
testing and market research, which is
entirely optional if you're only in it for
some kicks and laughs.

If you want an engine to do something with,
you're probably better off joining some
open source team, such as CrystalSpace.

drakaza
09-04-2000, 06:01 PM
Yeah, you are definitely looking at a few years. The time will be much shorter if you have other people helping e.g. for the graphics and animations, sounds, etc

But doing everything ALL yourself takes AGES, because you need to spend days testing every part of the engine..and you can't have an engine without testing, and some basic graphics/animation to show off the potential

-Drak

NewROmancer
09-04-2000, 09:48 PM
Well my opinion is that an engine that can compete on the free market these days IS IMPOSIBLE TO MAKE IT ALONE. But with a team of 3-8 men you can do a good one in 2 years if they don't have experience and 6 months if they all done at least one engine before. Anyway if you read this post means that you loose your time and you don't learn about collision detection aso ...

NewROmancer

XBCT
09-05-2000, 02:39 AM
Hi!
I can only tell you some things from my expirience.I´m coding a Q3Viewer which means that I code the graphical part ONLY....Now it looks like Q3 and runs at approx. the same speed as the original....It took my about 4 month....And this is ONLY the graphical part, and it was not the first engine I coded....Which means all those other parts physics\animation\AI I am not expirienced with would take me *alot* of time....If you want to do everything alone you´ll need at least 2-3 years before your team can begin with the level design\artwork.....So I guess it would be a good idea for you to only aim for one part of the engine(GFX for example....) and if this is your first engine you´ll need at least half an year for the GFX-part....

P.s.:Why ASM?Writing the bsp-compiler in asm does not give a big speed increase over good c-code and I can imagine it would be hell....Even Carmack says there is no need of using ASM anymore today....And do you know how much ASM-knoweledge he has?

HTH,XBTC!

Crusader
09-05-2000, 04:55 PM
Thank you guys... I've understood that it was impossible ! In 2-3 years technology will have been rising so high that I won't be able to use it anymore...

So my only chance is to do it with people... that's better I think ! It's more fun and will have more potential !

-Where could I find a Really good starting point for GFX only (a lot more deeper than NeHe please)

- Bgl, where could I find such teams as CrystalSpace ???

- XBCT, Don't you think ASM is faster ? I'm not saying Carmack is not right... but it is proved that it will always be faster for Core programming (when we had 8086 it was 10'000x faster) and when you compile you need the highest power possible so you don't have to wait too long... you could reduce your compileof 1 hour if it takes 10 maybe... so I really want this knowledge not for all code... just for important vars ?(!)

So if any is intersted to start with me... OR could help me please send ANY stuff to this mail, it would be greatly appreciated!

Maybe I could start a site with all my progress so anyone could be taught and I could be teached also... How do this sound?

Dave
mailto:dave.sur@caramail.com

NewROmancer
09-05-2000, 08:43 PM
If you really want to do this you should know that the OpenGl part (or DirectX) is the easiest part. You will have to do all the algorithms for simulating the world (LOD aso), the terrain the characters. You will have to do the AI of the characters, the collision detection. And most of all you will have to understand how the nowadays graphics cards work. Try on this site at examples where you have a lot of code to do almost anything. And you will have to do the level creator also.

NewROmancer

skw|d
09-05-2000, 09:07 PM
I have done some projects with companies that want to do a completely new engine from scratch. And the average that they *want* to allocate is about a year of R&D. Almost every time, what they want and what is possible are different things entirely.

Sometimes you have to forget features you would like to implement so that you can make the projected deadline.

But this is if you are getting paid to do so, and work 10+ hours a day. As a hobby project, it can go on forever as you add features.

/skw|d

drakaza
09-05-2000, 09:30 PM
Originally posted by Crusader:

So my only chance is to do it with people... that's better I think ! It's more fun and will have more potential !


YEAH! this goes for programming your engine too!!

XBCT
09-06-2000, 03:47 AM
>XBCT, Don't you think ASM is faster ? I'm not saying Carmack is not right... but it is proved that it will always be faster for Core programming (when we had 8086 it was 10'000x faster) and when you compile you need the highest power possible so you don't have to wait too long... you could reduce your compileof 1 hour if it takes 10 maybe... so I really want this knowledge not for all code... just for important vars ?(!)<

Yes I didn´t want to say NEVER use ASM.Surely good ASM-code is faster.
What I meant is that with todays compilers there are only very few places where ASM is neccessary....And especially a BSP-compiler would simply be hell coded in ASM and wouldn´t be that much faster....The Problem is that you cannot cut processing time(the bsp-processing takes it time due to the 1000´s of recursion,surely you can make it faster with clever algo´s but not much with ASM) you can only try to code faster mathematical Operations with ASM.
It would perhaps make sense to code a ASM Vector class or something like that but coding the whole compiler in ASM makes no sense....I would write ASM parts only in the graphic-pipeline of the Engine and there only if it is needed.Look for example at Titan(a Q3-Viewer) it is 95% as fast as Q3 and doesn´t use a single line of ASM in the rendering loops(AFAIK except for the math-stuff which is coded in ASM).

HTH,XBTC!

Greets,XBTC!



[This message has been edited by XBCT (edited 09-06-2000).]

skw|d
09-06-2000, 07:39 AM
ASM is fast and that is true. I find it fun to code in ASM. But a big issue with using ASM is that it makes your code unportable.

When developing an engine for a company, you are given a deadline to complete your work. Because ASM takes so long to code in and most modern compilers are very good, it does not pay to code in ASM because the speed payoff is not that great compared to the extra hours that it requires to code in.

/skw|d

Crusader
09-06-2000, 08:01 AM
Okay, okay... I really understood now ! Thank you for all the posts.

The graphical part is the easiest... but the simulation and AI will be the harder for me. ASM will be no use 'cause it's too tricky.

I just wanted to make a new type of engine, where you could play in a world in multiplayer, that is *really* customizable... id's one has got no option part from doing *little* kind of mods... One where you can add solids/graphics/models at ANY time... but object had to be precompiled for speed optimizations.

-How do this sound ? [ http://www.opengl.org/discussion_boards/ubb/redface.gif] So now I must change to a new forum because what i need is maybe good memory manipulation, rather than graphics optimizations (Still need!)?

I'm getting a bit more specific... thanks!

PS: Does any one knows the level (in programming) needed for skeletal animation in 3d ? I've seen some source and demos and it was really good ! Is it possible to make my engine run with this also or will I need a double PIII/1GHz ? if any ideas catch me also on ICQ#86954670)

Dave

skw|d
09-06-2000, 07:11 PM
Yeah, it's called a virtual world, I am making one now. There will be several 'GODs' that have access to create items and such. Everything is customizeable through plugins and scripts.

I would suggest you read Advanced Animation and Rendering Techniques by Alan and Mark Watt. It has some good info.

/skw|d