Hard Light Productions Forums
Modding, Mission Design, and Coding => The Modding Workshop => Topic started by: Legate Damar on April 12, 2012, 06:53:24 am
-
Two questions
1. What is the biggest ship that has ever been modeled?
2. How big can a ship be before the game will crash?
-
Ships can (in theory) be infinitely large. However, due to floating point math inaccuracy, you will run into issues if you go above a few hundred kilometers.
Of course, this doesn't cover the other issues associated with such large ingame entities (you can't interact with them in a meaningful way, making them look good requires an insane amount of polygons and textures). In short, you won't see crashes. You won't be able to make these things fun, but at least it would be non-crashing not-fun you'd get.
-
Is a planet doable?
-
The largest in-game model ever would probably be the "Earth" planet model from Inferno Release 1, which was a sphere 12 million meters in diameter. It was used as a mission background.
This is generally discouraged. Planet bitmaps and skyboxes can do the job better.
-
There are also terrain models, which actually work pretty well. It's pretty much the only use for such enormous models. They're a priceless resource for any mod that wants to include flying in atmosphere, but there isn't many of them, and most are lo-poly. In general, any big object, be that terrain or a very large space station, is most useful as a "mission environment". There's an enormous mission design potential in there, but due to the difficulty of making both assets and missions using them (AI crashing tendencies don't help), it's barely touched in most existing campaigns.
-
The largest in-game model ever would probably be the "Earth" planet model from Inferno Release 1, which was a sphere 12 million meters in diameter. It was used as a mission background.
This is generally discouraged. Planet bitmaps and skyboxes can do the job better.
HINT: Kinda' hard to destroy a planet that's stuck to the background as a bitmap (would involve many well-coordinated SEXPs and doesn't look as good).
R
-
We've been working on getting fractalspounge's SSD in game @17.6km and I think it's do-able... but the model was never intended
for game use. PCS2 seems to have a limit of about 200,000 polies per object too, so it's a shot in the dark if you'll actually
get output or it just sits there and eats ram into infinity, at that size.
-
The largest in-game model ever would probably be the "Earth" planet model from Inferno Release 1, which was a sphere 12 million meters in diameter. It was used as a mission background.
This is generally discouraged. Planet bitmaps and skyboxes can do the job better.
HINT: Kinda' hard to destroy a planet that's stuck to the background as a bitmap (would involve many well-coordinated SEXPs and doesn't look as good).
R
Vidmasted did just that, in the Fotune Hunters III. It did involve a lot of coordinated SEXPs, but was absolutely stunning. Seems quite a chore to write though.
As for SSD, Gargant is 40km long and works (well, outside of the nebula, where the engine doesn't quite know when to render it).
-
We've been working on getting fractalspounge's SSD in game @17.6km and I think it's do-able... but the model was never intended
for game use. PCS2 seems to have a limit of about 200,000 polies per object too, so it's a shot in the dark if you'll actually
get output or it just sits there and eats ram into infinity, at that size.
isn't it something like 64k? I've encountered this problem befre 200k and splitting the model into 50k pieces helped[with not working at all].
-
The limit is set to 2^16, aka 65536. Expanding it is not an option, just in case you were wondering, since a) it would require adjustments to the pof format (which would involve changing both PCS2 and FSO), and b) because as Taylor once said, this is a game, not an art show. If you really think you need so many polygons, you are not thinking in the right way for a game designer.
-
Besides, splitting the mesh into separate objects isn't a bad thing, and if you use detail boxes, it's a great way to improve performance on big, long ships.
-
Is there a tutorial anywhere that covers use cases for detail boxes?
-
didn't know there's a planet. anyways, i figure the pygros (http://www.hard-light.net/wiki/index.php/AI_Pyrgos) is the farthest it'll ever go.
-
didn't know there's a planet. anyways, i figure the pygros (http://www.hard-light.net/wiki/index.php/AI_Pyrgos) is the farthest it'll ever go.
nope!
-
didnt we already go over this in general fs:
http://www.hard-light.net/forums/index.php?topic=80415.0
im convinced its possible to get (smallish) planet or moon sized geometry in the game, or to completely cover the entire useable game grid with high quality terrain geometry, with clever detail-boxing techniques and minor engine tweaks. i went into that in the other thread and i dont feel like repeating it.
-
guys planets arent ships
nor are terrain objects
-
Really the Orion is about as big as a FreeSpace ship can get without losing much of the interactivity and turning it into a BDO.
-
I need big ships for massive battles, to make it look impressive.
What the player does is a small part of the battle.
Like in a real battle, is it not up to one soldier to win, every one plays their part and has their assignment.
-
Uh-oh, BOE here we come.:)
-
I know about BOE problems, but this will be different as the player has a clear objective to do and it's important.
-
You do not need a ship to be 10+ km long to be impressive. In fact flying over the ship and realizing that it hardly does anything actually makes it less impressive.
-
I have seen the big ships in Blue Planet and other mods, I want to give the feeling of being immersed in a truly amazing battle, trust me I have a plan set up. I have the big ship models I need except one. The campaign isn't just big ships, it has many things.
-
Blue Planet's most massive battles actually involve 1.5km frigates and 700-900 m corvettes, not the really big ships. In fact the two biggest ships are just immobile set pieces that hang in the background and trade fire during Universal Truth without doing anything aside from being big.
-
Ships will do things like that in my mod.
But first there will be a mission where you defend a corvette.
-
But first there will be a mission where you defend a corvette.
I hope it will be from an attack from at least two enemy destroyers and four wings of bombers simultaneously, where you're tasked with disarming six beam cannons and intercepting swarm torpedoes. All at the same time.
Otherwise it just isn't epic!
-
Stop Droid, you're giving me nightmares of Dawn of Sol, and therapists are expensive and will make my insurance go up.
-
You have to defend the corvette from 8 enemy warships as well as 4 wings of fighters and 2 of bombers.
But the warships are spread apart so they don't all attack at once. And they have no beams and use torpedoes you can intercept. Your corvette outranges them. You have 2 wings of fighters and 2 of bombers to help you. Your fighters and bombers are better than the ones the enemies have too.
So it is quality vs. quantity.
-
guys planets arent ships
nor are terrain objects
i didnt switch the tracks
-
You have to defend the corvette from 8 enemy warships as well as 4 wings of fighters and 2 of bombers.
Someone must really want that corvette dead. :p
-
Actually you are ambushing them with an attack pattern designed to take them by surprise, so they cannot coordinate their defense in time (if you play the mission right).
-
(if you play the mission right).
Now I have nightmares of DoS.
-
Don't worry, the mission is not too difficult, if you are a decent player
-
Just keep in mind that any mission designed for a specific style of play should provide clear briefing instructions.
-
I will release a demo for playtesting when it is ready
-
What the player does is a small part of the battle.
Like in a real battle, is it not up to one soldier to win, every one plays their part and has their assignment.
I tried that. I thought I had it set up really well, but it's harder than it looks to make something like that actually fun and impressive and not overwhelming. But that's how we learn! Look at "Hecate Crash" in my signature if you'd like to see it for yourself.
-
I am confident I can do it!
-
I really like t know the largest "Ship" (No planets, stations, space debris, suns, misc. stars, androids, shivans (Carl will do), *anyotherspacetingieshere*) ever modeled (HTL'ed and Non HTL) for FSO. The Gargrant seems to be that largest, but, is anything else out there?
-
I really like t know the largest "Ship" (No planets, stations, space debris, suns, misc. stars, androids, shivans (Carl will do), *anyotherspacetingieshere*) ever modeled (HTL'ed and Non HTL) for FSO. The Gargrant seems to be that largest, but, is anything else out there?
Apparently there was a 150km ship that was used in a pre-R1 version of Inferno, but it was dropped.
-
You know, you could just take ANY ship, and scale it up with PCS2's transform functions. Bam, instabigship.
-
One day I shall release my 120km+ frankenship upon the world and nothing will be the same :lol:
-
50 km is the biggest I would ever consider using but probably not
-
a death star probably O,o for a dead star trench run... is about the biggest I think can be "SOMEHOW" fun, but pretty much that means it actually is just a terrain filled with turrets...
-
Has FotG made that model yet?
-
a death star probably O,o for a dead star trench run... is about the biggest I think can be "SOMEHOW" fun, but pretty much that means it actually is just a terrain filled with turrets...
somone did that.
i decided after i made the dante (really its technically not done yet, but i kinda got bored with modding), and realized it took a couple minutes to fly from one end of the ship to the other, and longer to navigate the loop (the interior was meant to be a descent homage, complete with shivans with arm gun thingies), that big ships are not that fun. and when you make the player wait long periods of time to move from one turret to the next the game gets rather un-fun. thats not even bothering with trying to dodge the shotgun flak and the multiple racks of bfreds.
-
The Dante isn't done? But it was in Blue Planet
-
wait what? it didnt even have lods.
-
how big is this one (http://www.youtube.com/watch?v=vfQ2VSpVA_4)?
-
how big is this one (http://www.youtube.com/watch?v=vfQ2VSpVA_4)?
It's a background image/skybox
-
*takes out tape measure*
Well it's no moon...
-
Yeah I had a plan for one also, but its a few years off. I still have to learn an ass load of freding and technology has to improve enough to be able to run BOE missions on the worst computers, without lagging out. So yeah if you can do that now, more power to ya.
-
Technology will never improve in that way because people will just build more detailed ships to use up the additional processing power, not to mention the CPU bottlenecks involved with tracking all the objects.
-
we can run retardedly massive BoEs with retail ships/effects just fine (until we hit hardcoded projectile/object limits).
but I would much rather have normal missions with hi-poly ships and all my shiny particle effects.
-
We need dynamic graphics detail levels tied to FPS counts. Have detail settings drop one notch every 5 FPS below 25 FPS, and go up one notch every 5 FPS when it goes the other direction.
... Ya, right. :lol: Just a random thought; take it with a tablespoon of salt. ;)
-
That's probably a horrible idea as the only sane implementation of that relies on LODs, and some LODs just aren't designed to be actually seen as they look hideous (but are fine when they're tiny in the distance), or forces everyone to go back and re-make LODs for everything. Possibly prompting people to forgo making LODs altogether rather than making sure there are poly reduced LODs which still look acceptable up close.
I know I'd just go "to hell with LODs" if I couldn't just use an optimize script for LOD2-4. :P
-
I follow the "To hell with LODs" philosophy myself. If your computer can't handle my models (which are like 3,000 polies on average for a fighter and 12,000 polies for capships with turrets included), it's time for an upgrade.
-
We need dynamic graphics detail levels tied to FPS counts. Have detail settings drop one notch every 5 FPS below 25 FPS, and go up one notch every 5 FPS when it goes the other direction.
... Ya, right. :lol: Just a random thought; take it with a tablespoon of salt. ;)
Do you want to know why this won't work?
-
There are techniques over in console-land where the effective render resolution can be adjusted dynamically based on the previous frames' render time.
However, as almost all tests have shown, FSO is not bottlenecked by GPU performance in most scenarios (indeed, you'll probably see your GPU idling a lot per frame), but by CPU performance. So our optimization efforts are centered on getting the code that isn't run on the GPU to run faster.
-
Exactly. Reducing detail isn't gonna help you when you have just as many collision pairs.
-
FSO is not bottlenecked by GPU performance in most scenarios
*cough* Integrated Graphics *cough*
-
Technology will never improve in that way because people will just build more detailed ships to use up the additional processing power, not to mention the CPU bottlenecks involved with tracking all the objects.
Not in a couple of years. But in fifty years probably, if we haven't blown our selfs up by then :/
-
FSO is not bottlenecked by GPU performance in most scenarios
*cough* Integrated Graphics *cough*
Developing with Intel hardware as a target has never and never will be our goal. FSO will always be targeted at real GPUs first and foremost.
-
FSO is not bottlenecked by GPU performance in most scenarios
*cough* Integrated Graphics *cough*
...aren't most of the maths in an integrated graphics card basically made by the CPU anyway ? So we're back to square 1 : CPU performance bottleneck anyway :p.
-
That's not entirely true for the latest chipsets to come out of Intel, the graphics cores in the i5 and i7 range are pretty capable by themselves. Still, since they're nowhere near as optimized for performance as the corresponding nvidia and AMD offerings, and since the average gamer will have a dedicated GPU, making concessions to intel chipsets is not something that we need to do.
Yes, I know it sucks that you intel people can't use the full range of options available in FSO, but what are we supposed to do about it?
-
yea just tick back your detail settings and dont install every effects package available.
hell, just drop in a $50 nvidia or ati card and you will see an improvement.
but frankly, modders should lod their ****, especially their big ****. ive been lazy with my stuff and theirs no excuse. also with lods, detail boxes and well chosen detail distances, you can cram in more detail than would have been possible otherwise. a lot of polies far away comes at the expense of a lot of polies close up.
-
So, the bottleneck is pretty much all collision detection at this point? Any way to re-do that part of the code, or is it massively complicated or integrated in such a way that re-doing that would mean re-doing much of the engine?
-
Collision detection is one part of the engine that could be improved. There are a few others as well, and there are areas where we are using suboptimal ways of transferring data from the CPU to the GPU.
BTW, one potentially rather important area that could stand some improvement is the lua integration code, as it seems, it is really easy to bleed performance there.
-
So, the bottleneck is pretty much all collision detection at this point? Any way to re-do that part of the code, or is it massively complicated or integrated in such a way that re-doing that would mean re-doing much of the engine?
I don't want to come down too hard on you, but if it hasn't been done already, what do you think the answer is? If you're thinking 'not impossible, but a big effort', you're headed in the right direction.
And please don't make some ****ing crack about Valathil. You belittle the great work he's done as well as the great work done by the rest of the SCP coders by suggesting that what he does is easy.
-
:wtf: I know what he's done isn't easy. He's just pretty damn good at it is all. Unless I was to the point where I could actually read and understand the code (not even to the point of being able to contribute) I really wouldn't (so therefore, I can't) be able to tell what the deal is with the collision code. Maybe it was just such a tangled mess that it can't be fixed, and has to be re-done, but they are waiting for some improvement in another area of code that is relate -- heck, I don't know. Hence why I asked.
-
Swifty has performed some minor collision optimizations already.
-
The problem with the collision code, in a nutshell, is that it was written for retail-level ship and weapon numbers and model detail. In those circumstances, it performs really well. But, as we have been busy adding stuff, making more and more elaborate missions and models, the approach used there just isn't adequate anymore. Sorting out which object collided with what, and where exactly the collision occured, is getting more and more expensive.
Tweaking the algorithms, or switching them out, is definitely possible. But, as this impacts a core functionality of the engine, it is not something where we want to risk breaking it.
Realize that collision detection is a hard problem, and that there are no silver bullets to instantly make it faster. In addition, I cannot stress enough that collision detection is one issue where we have performance problems, but it is not the only one.
-
GPUs are not well suited for that type of logic, right? Cause I was just thinking, if there was a way to off-load collision detection on to the GPU...
/me retreats
Stop hitting me with teh broken plasma rifles; it was just a suggestion!
Seriously, though, Folding@Home & SETI @ Home and IIRC Prime95 benefit from GPU acceleration (as do some password-cracking routines), so, why can't the GPU be told to handle it? I'm sure there's a good answer, I'm just too dense to already be aware of it.
-
GPUs are good at one thing, and one thing only. That one thing being massively parallel vector operations on large datasets. Collision detection, as implemented in FSO, requires an asston of binary split partition tree walking, which is somehting GPUs are very definitely not good at.
Not to mention that the interface between the CPU and the GPU is rather slow (because it involves generating something that very closely resembles a texture on the CPU, transferring it to the GPU memory, doing your operations, and then transferring it back to main memory and reading the results. Which is slow as ****.
-
Well The_E, maybe we could convert our collision detection into vector operations on large datasets! I mean, objects in motion have vectors, right, so we could use the GPU to handle collision detection if we just recoded the (http://i.somethingawful.com/forumsystem/emoticons/emot-suicide.gif)
-
:drevil: I have done it!
I have taken over de WORLD!
tHE GREAT gENERAL bATTUTA HAS fallen TO MY eeeevil INFLUENCE!
BWAHAHA! BWAHA, BWAHAHAHAHA!!!!
:nervous:
Oh. He wasn't serious?
O i c This changes things.. a bit.. -backs away slowly-
:warp:
-
wasn't this topic about a big ship...?
-
Topic? What topic?..
SQUIRREL!!!!
(http://i40.tinypic.com/123v1qq.png)
-
This thread is about big ships.
Big ships and many ships.
And many big ships.
And just many ships in general.
-
wasn't this topic about a big ship...?
this is natural HLP topic progression, if you are lucky it will still be about ships tomorrow, if not it will either be something like how tasty zebra is to eat or locked
-
^_^ BIG SHIPS ^_^
(http://i32.photobucket.com/albums/d1/GuardianZinv/Misc%20Images/stripesR.jpg)
-
What's with the paint job on that one?
-
I dunno... what's with the paint job on this one?
(http://i32.photobucket.com/albums/d1/GuardianZinv/Misc%20Images/stripesG.jpg)
-
Hmmmm... I like the red one more. It looks like it has a higher cruising speed.
-
Teal is for teal nebulas... blends in perfectly of course. ^_^
-
We can call the first one the Really Errant Venture.
-
Glad someone caught the reference...