Author Topic: FSF: engine stuff  (Read 9553 times)

0 Members and 1 Guest are viewing this topic.

Offline daveb

  • WHEE!!
  • 25
Quote
I personally don't want to spend the next 18 months of my life developing an engine from scratch, so my strong recommendation is to use a pre-existing engine to which the development team will have source access.


But this is just my point. If you think you have to spend 18 months developing some bells-and-whistles engine, you're just kidding yourself.

I'm not saying, don't plan on animated meshes, or volumetric explosions. I'm saying, put them aside and focus on a few really simple things. Trying to do it all at once will get you nowhere.

Now, I'll admit, I don't know a whole lot about engine licensing - I've always been in a position where writing my own is the way to go (for better or worse). What I have had plenty of experience with, however, is trying to take a generic piece of code and trying to make it run well in the context of what I'm doing. If you try and go the pre-made engine route, I can almost guarantee you it'll be more work to get anything running satisfactorily than if you did it yourself in tiny pieces. And in the long run, you'll have learned a _whole_ lot less and be less prepared to do the really cool stuff when/if it comes time. Pre-built engines are for organized teams of professionals looking to cut cost or development time in certain situations. Projects like this are about learning and experimentation.
« Last Edit: April 18, 2002, 09:28:07 am by 700 »

 

Offline Bobboau

  • Just a MODern kinda guy
    Just MODerately cool
    And MODest too
  • 213
yes I am in complete agreement with you about this.
obviusly we arn't going to start the volumetric bump maped particles before we have a basic texture maped polygon renderer
but this list isn't about things we are going to implement now or next, this is just a bunch of pie in the sky that we may chose to add way later,

honestly what we need to focus on now is (extreemly basic) lighting and texture mapping, and getting a engine that can render objects at specified cordanants and rotations relitive to an eye point, I honestly think kaz could make a engine that renders pofs in a quasi-game like environment (with only the most basic lighting, maybe texture mapping) in about two weeks

what we need now (in addition to more programers) is to get the rendering code in to it's own seperate exe,
then get it to render an object at an arbirary place,
then more than one object,
then a moving/rotating eye point
then texture mapping if it hasn't been emplemented yet

does this seem like a good set of goals for when we start actualy writing the code (wich I hope we do some time soon), I think this could be done in a month,
if we can get to this point I will change my vote from "never gona hapen" to "it's gona take a lot of work"
Bobboau, bringing you products that work... in theory
learn to use PCS
creator of the ProXimus Procedural Texture and Effect Generator
My latest build of PCS2, get it while it's hot!
PCS 2.0.3


DEUTERONOMY 22:11
Thou shalt not wear a garment of diverse sorts, [as] of woollen and linen together

 

Offline Inquisitor

Hehe, beat me to the punch, I was gonna ask if you had looked at any of the premade ones.

I *personally* learned alot about engines in the last 10 months as a TQ licensee. Of course, at the same time, I was reducating my self in C++, so it was unlikely that I was gonna just set out to build it myself to begin with. I had a VERY specific problem to solve, and licensing something was, ultimately, my only realistic course of action. It worked for me, but I had a very small team (me, basically ;)).

I think, it's worth it for whoever takes up the programming banner on this to at least LOOK at an engine, cause it's bigger problem than people are giving it credit. Serious kudos to people like you, Dave, who build these things from scratch. I also don't know what the REAL skillsets of some of the programmer type volunteers are. I guess it will boil down to how much any one programmer actually understands. And I suppose, my confidence would be boosted if the programmer types could produce a from scratch openGL window with arrow controls and a simple ship model.

Something I do not know anythign about, is the current state of readiness of existing engines like Crystal Space, all my info is  about a year out of date. So, MY homework is to have a look, and compare it to something I know something about. But, my professional preference with JUST about everything when it comes to "build v. buy" is to buy. So, my professional preference is getting translated to this venue, where I am clearly an amatuer. Habits are hard to break, especially in a development context :)

Think big, start small. So, taking daveb's point to heart, do the 2 developers out there who "volunteered" wanna try there hand at that?

On that note, I'll stop typing :)
« Last Edit: April 18, 2002, 12:24:14 pm by 122 »
No signature.

 

Offline daveb

  • WHEE!!
  • 25
Indeed, that all sounds like a rational plan. Evaluating things certainly can't hurt.

Also - the blue sky future planning is all great, too. But - if you look at the threads around here as they stand, you could make an argument that people are already becoming more interested in 2-years-from-now functionality than 2-hours-from-now functionality. Seriously, try buckling down right away and see what you come up with. Don't obssess too much over minor details. Just get something solid going. Plan on posting a zip file with an exe and some data on the board in 2 months. Something along those lines :)

 

Offline Inquisitor

Hell, I plan on a zip file with an exe based on my TQ stuff in a couple weeks ;) Just art swapping and model conversion, let people play with stuff in another engine, get a feel for what is possible. I'm real big on seeing public demos and publicly displaying progress. I found with the TQ stuff I am doing, that constatly updating a prerelease alpha/beta/whatever kept the small group I had interested. Also lets people feel like they are contributing. It's also REAL nice to have a working exe, just because. Get a little buzz going while still making progress.

A 2 month goal for original stuff sounds good, though. Realistic. Hopefully the other 2 programmer types are following the thread.

BTW, thanks for taking an interest in this, and thanks for the discussion, I think it's great to see you over here. Business never takes me to Illinois, and I doubt you make it to Beantown much or I'd offer to buy ya a beer ;) Both for this, and for the incredible satisfaction I have gotten out of V games (though, my wife might punch you in the nose).

There, that's all the ass-kissing I'll do for now :)

-edit-
too many bloody smilies
No signature.

 
IMO, this project needs (even as a final, finished product when/if it ever happens) a fun engine over a beautiful one.

Things I want in a FUN engine that are quite doable for a project like this (at least I think so)

In no particular order.....
  • good and intuitive physics
  • basic EAX positional audio
  • INTELLIGENT AI
  • MODability (yeah, as if I could talk you guys OUT of that one)
  • In-engine scripted events (including out-of-cockpit camera movements) controlled entirely by the mission designer
  • FULL keyboard/mouse/joystick customizability (like FS/FS2 gives, not like XWA gives...again - not a problem I expect to crop up, but something I figure I'll say)
  • Ability to pause and issue orders (so I play too many RTS games - is that a bad thing?)
  • A graphics engine capable of displaying polygons.  Gourad shaded if possible.  Texture mapped optional.  That's right - I still consider the original TIE Fighter game to be a very FUN game - the only (read: ONLY) thing I wish it had was things like auto-speed matching, full keyboard customization, more intelligent HUD, etc - NOTHING that had to do with graphics)

If more things come to mind, I'll tack them on - but I would consider a finished product that was MODably superior to FS/FS2 while being graphically inferior to be an awesome thing in and of itself (not to mention far superior to having nothing at all because we couldn't get dynamically generated bump-mapped decals to be applied right or the diffraction of beams as they pass through cockpits to work right.

There you have it folks - my little feature list.

  --TurboNed
"It is the year 2000, but where are the flying cars? I was promised flying cars! I don't see any flying cars. Why? Why? Why?" - [size=-2]Avery Brooks from an IBM commercial[/size]

 
Quote
Originally posted by Shrike
It's Dave!

Looks like we're getting more developer-type people around here.  About time, says I. :cool:  


Also - is someone gonna slap a :v: avatar on him any time soon?  I'm thinking that maybe, just maybe he might've earned it.  (-:

  --TurboNed
"It is the year 2000, but where are the flying cars? I was promised flying cars! I don't see any flying cars. Why? Why? Why?" - [size=-2]Avery Brooks from an IBM commercial[/size]

 
The real trick to this as I see it is to make it so you just install this thing and it will fairly seamlessly use your existing Freespace 2 installation (or just the CD's even) to run the existing Freespace 2 and its campaigns but with any 'replacement' extras inserted (i.e. higher detail ships and stuff).

The single most important thing I think that the community has to put in this new engine is greatly improved mod handling - along the lines of the half-life interface so you load up a campaign and it automatically starts using that campaigns mods, or you load a certain mod and it automatically uses those files instead while in reality keeping everything nice and separate and just changing the paths it uses to the files. And of course, while we're at it we also want to remove all those old limits that we hate.

Aside from the above, providing we get at least Freespace 2 level graphics and other things then everything else we add will be optional, but preferable.

Now, to this end (and I didn't really intend to go here but I'd like to throw it out for discussion), I think what's needed in this new engine is a completely modular approach. It should really just only support the basic Freespace 2 abilities and then everything else should be added via some module system. I believe this would probably make it easier to manage as an open source project (since eventually the core source is locked down). Essentially what I'm saying is, the real trick to making this work well is to make it as extensible as possible. The only really set in stone functionality should be that which is necessary to make it run the original Freespace 2.

EDIT
Was just looking over the rest of the forum and realized something else - we definitely want to correct some of the bugs of the original FS2 - the one which comes to mind is the shield bug Kazan talked about where if you hit a certain point on the shield the game crashes when its big enough.
« Last Edit: April 19, 2002, 08:49:59 am by 383 »

 

Offline Kazan

  • PCS2 Wizard
  • 212
  • Soul lives in the Mountains
    • http://alliance.sourceforge.net
Hey dave, your input is much appreciated.  Even I was getting ahead of myself.  

I'm going to go write come code now (bah.. i have to extract the FS2 data...)
PCS2 2.0.3 | POF CS2 wiki page | Important PCS2 Threads | PCS2 Mantis

"The Mountains are calling, and I must go" - John Muir

 

Offline Grey Wolf

Quote
Originally posted by Kamikaze


They seem to be making Descent 4... :)
pssssstttttt: Dave has posted - we must enshrine his holy words
Ah. I understand.
You see things; and you say "Why?" But I dream things that never were; and I say "Why not?" -George Bernard Shaw

 

Offline Kamikaze

  • A Complacent Wind
  • 29
    • http://www.nodewar.com
Quote
Originally posted by daveb
Indeed, that all sounds like a rational plan. Evaluating things certainly can't hurt.

Also - the blue sky future planning is all great, too. But - if you look at the threads around here as they stand, you could make an argument that people are already becoming more interested in 2-years-from-now functionality than 2-hours-from-now functionality. Seriously, try buckling down right away and see what you come up with. Don't obssess too much over minor details. Just get something solid going. Plan on posting a zip file with an exe and some data on the board in 2 months. Something along those lines :)


I know what you mean, I have this friend that's already trying to plan and make a 3d RPG game when he doesn't even know basic object-oriented programming (or OpenGL, Direct3D, C etc.) or even how a computer works... (nana gates, binary, how RAM works etc.) :p He's really funny :lol:
Science alone of all the subjects contains within itself the lesson of the danger of belief in the infallibility of the greatest teachers in the preceding generation . . .Learn from science that you must doubt the experts. As a matter of fact, I can also define science another way: Science is the belief in the ignorance of experts. - Richard Feynman

 

Offline Inquisitor

Kaz, have you looked at that openGL universe flythru that T posteed in the main forum here? It's open source, might be worth a look, I am installing it now.
No signature.

 

Offline Kazan

  • PCS2 Wizard
  • 212
  • Soul lives in the Mountains
    • http://alliance.sourceforge.net
url pls
PCS2 2.0.3 | POF CS2 wiki page | Important PCS2 Threads | PCS2 Mantis

"The Mountains are calling, and I must go" - John Muir

 

Offline Inquisitor

Gonna make me work for it, eh?

http://ennui.shatters.net/celestia/

I played with it briefly, kinda neat. May be nothing more than a novelty, but, every little bit helps :)

On that note, gotta finish packing, see everyone in a week!
No signature.

 

Offline Kazan

  • PCS2 Wizard
  • 212
  • Soul lives in the Mountains
    • http://alliance.sourceforge.net
im coding
PCS2 2.0.3 | POF CS2 wiki page | Important PCS2 Threads | PCS2 Mantis

"The Mountains are calling, and I must go" - John Muir

 
Wishlist for FSF:

1) A ship that can fly.
2) A second ship that can fly.
3) The second ship fighting the first ship.
4) The losing ship explodes..

And it should look pretty too, but AFTER the engine works.

 

Offline Kazan

  • PCS2 Wizard
  • 212
  • Soul lives in the Mountains
    • http://alliance.sourceforge.net
right now im working on basic POF rendering
PCS2 2.0.3 | POF CS2 wiki page | Important PCS2 Threads | PCS2 Mantis

"The Mountains are calling, and I must go" - John Muir

 
Quote
Originally posted by Starfury
Wishlist for FSF:

2) A second ship that can fly.
3) The second ship fighting the first ship.


Seeing as your "Second" ship is probably going to have to be controlled by AI, aren't those two things something that the big-name coders have been trying to get to work forever?  Seems kinda ambitious to me....I'm thinking we should just make it pretty and forget about those two parts.  (-:

  --TurboNed
"It is the year 2000, but where are the flying cars? I was promised flying cars! I don't see any flying cars. Why? Why? Why?" - [size=-2]Avery Brooks from an IBM commercial[/size]

 

Offline daveb

  • WHEE!!
  • 25
AI is probably the #1 or #2 hardest system to get right. Its an incredibly ill-defined problem to solve. I'd say ixnay on the ai for the time being.

 

Offline Grey Wolf

Quote
Originally posted by Kazan
right now im working on basic POF rendering
That's a good thing....





Isn't it?
You see things; and you say "Why?" But I dream things that never were; and I say "Why not?" -George Bernard Shaw