Design Notes: New Damage System
Engineering Development Design PostContent
Greetings Citizens,
As some of you may have seen from the recent sneak peek on Around the Verse or the Foundry 42 monthly updates, we’ve been hard at work for some time to improve the damage system on the ships. We’ve already shown in Arena Commander our very powerful and flexible system for controlling the damage on your ships, which combined with some awesome artwork gives some great results. But your ships are such a big part of the Star Citizen universe we felt we had to go several steps further.
So we took a top down look our damage system to review what we could improve, and although there is great satisfaction in peeling off each part of an enemy ship when they take major damage, we felt we could better represent the specific location and type of damage inflicted. Whether it be a projectile weapon, an energy weapon, an explosion or scratching your ship after a dodgy landing, we want you to be able to differentiate them just from looking at your ship. We felt this was going to be especially important in our game as we want each ship to tell a story of what’s is been through.
Two other areas we wanted to improve on were the time it takes our artist to create the numerous damage states for each part of the ship, and the hefty memory cost these meshes come with, which could prove to be a problem as we scale up the game. The reason the damage states are so labour intensive is that each ship has over ten main parts, and each of these requires five damage states to represent the different levels of damage, then each of these requires up to five simplified meshes that we use when they’re further from the camera to save performance. This equates to over 200 meshes per ship!
When you examine the current damage states in Arena Commander you’ll notice that the first two damage states tend to just contain minor dents, some burn damage, and perhaps a few panels that have been blown off exposing some internals. It’s only when you get to the 75% and 100% damage states you start seeing major silhouette changes, however the earlier damage states still carry the same memory cost. So our goal was to try and achieve the minor damage without having to create whole new meshes, saving both memory and artist time. To do this we decided to record the impacts on the ship within an extra set of textures that wrap around the entire ship, and to then use these in the shaders to dynamically add the dents and burn in precisely the location your ship took the damage. However rather than just opting to blend in a simple damaged texture in these areas, we instead chose to model the type of damage much more accurately by recording four different quantities:
Temperature The current temperature of the hull Burn The maximum temperature the hull has been burnt with Thickness How much of the outer hull remains. Paint comes off first, then the underlying metal Deformation How much physical force the hull has taken to bend and distort it Using these four damage values we can make the hull glow with heat, make paint burn and bubble, peel paint off to expose the underlying metal, dent and deform the surface, and even cut holes through the hull to expose the internal wiring and mechanics. Rather than the internals of the ship only being modeled in specific locations we now model the internals under the vast majority of the hull. You might expect this would involve a lot of work for the artists, but they’ve come up with several methods of adding these internals very efficiently and the overall damage state setup is now significantly quicker than before.
Your ship’s life story
The really interesting thing about us having access to four different measures of damage is that these can be imprinted on your ship in a pattern and strength that is unique to each weapon, explosive or type of impact. So while lasers will cause your hull to light up for several seconds leaving burnt paint and exposed metal, a powerful ballistic might tear a hole straight through your hull. We’re just scratching the surface of how far we can go with this system, and we plan to soon upgrade the weapon/ammo code to expose more unique and physically realistic damage behaviors.
We’ve trialed this tech on the Gladius, and you’ll see for yourselves in 1.1.0 that the results are great. What you might not see is that the Gladius uses four times less memory than the other ships, and this equates to better performance for the backers. Our artists are happy as this will allow them to make ships more quickly, which ultimately gets this game in your hand sooner! You’ll also be glad to know we’ll be rolling this tech out on every new ship, and also retrofitting the older ships as we go along.
New tools
Additional tech needed to be developed for placing our Particle and Squib Effects to complete the look of our new damage pipeline. When a part such as a Wing detaches from the ship, Squibs and Particles detonate along the edge of the separation. The Squibs, when detonated, specifically cause holes and burn damage to appear on the skin of the ship, revealing the ‘guts’ of the ship underneath so that the piece of the ship looks like it was torn away from the body. Particles also fire off as pieces break off from the ship, adding dramatic smoke, explosions and sparks. A specialized art tool, developed by Matt Intrieri, was created to convert helper objects in 3DSMax into XML code to add the effect in-game. CIG’s Effects Artist, Mike Snowdon, used the tool to add the Particles and Squibs to the ship along the edges of each part of the ship, creating dynamic and realistic effects based on the ship’s systems at each location.
Next Steps
But this isn’t the end of the road for this tech, there’s still several major features we’re working on. One of these is particle effects that are created, simulated and rendered entirely on the GPU, and this gives them two huge advantages. The first is performance, we can spawn 10-100 times more GPU particles than CPU particles for the same cost. The other benefit is that they tie in perfectly with the precise damage you’ve taken, so as the hull burns you’ll get glowing embers falling off, when it takes physical damage you’ll see shards of metal fly off, and when you blow out a large section of the hull you’ll see space littered with the debris. We’re also working on some major optimizations using to the damage system using DirectX 11 features to ensure that it’ll still run fast when there’s twenty fighters attacking a capital ship!
The first thing we did when we got this system working was to have some fun and write our names into a ship with a Gatling gun! Now it’s your turn to have a play and we’re keen to hear what you all think of this new tech so please let us know on the forums.
The Future
With our new damage technology now in place, we continue to strive for even more realistic and efficient methods to push our graphics in all areas. We’ll be adding more effects under the skin of the ship as gaping holes are revealed, adding touches like sparks on damaged equipment under the skin. Several lighting and particle setups are being prototyped to take our ship interiors through Healthy, Damaged, Critical and Flatline states that will inform and immerse our players during battle. Our new state machine being developed called GOST, will determine the healthy (or unhealthy) flow of energy around the ships systems and will have a big impact on our multi-crew interactions and the effect of ship damage on them. Given the complexity of our largest ships, that are really like floating levels, big questions remain about hull breaches and how to portray critical damage in the vacuum of space and how this will affect players inside. And optimizations in all areas will allow us to add more and more players simultaneously to create massive multiplayer battles. We are very pleased and excited to be releasing this first iteration of our newly optimized damage technology and hope the players feel the same.
As some of you may have seen from the recent sneak peek on Around the Verse or the Foundry 42 monthly updates, we’ve been hard at work for some time to improve the damage system on the ships. We’ve already shown in Arena Commander our very powerful and flexible system for controlling the damage on your ships, which combined with some awesome artwork gives some great results. But your ships are such a big part of the Star Citizen universe we felt we had to go several steps further.
So we took a top down look our damage system to review what we could improve, and although there is great satisfaction in peeling off each part of an enemy ship when they take major damage, we felt we could better represent the specific location and type of damage inflicted. Whether it be a projectile weapon, an energy weapon, an explosion or scratching your ship after a dodgy landing, we want you to be able to differentiate them just from looking at your ship. We felt this was going to be especially important in our game as we want each ship to tell a story of what’s is been through.
Two other areas we wanted to improve on were the time it takes our artist to create the numerous damage states for each part of the ship, and the hefty memory cost these meshes come with, which could prove to be a problem as we scale up the game. The reason the damage states are so labour intensive is that each ship has over ten main parts, and each of these requires five damage states to represent the different levels of damage, then each of these requires up to five simplified meshes that we use when they’re further from the camera to save performance. This equates to over 200 meshes per ship!
When you examine the current damage states in Arena Commander you’ll notice that the first two damage states tend to just contain minor dents, some burn damage, and perhaps a few panels that have been blown off exposing some internals. It’s only when you get to the 75% and 100% damage states you start seeing major silhouette changes, however the earlier damage states still carry the same memory cost. So our goal was to try and achieve the minor damage without having to create whole new meshes, saving both memory and artist time. To do this we decided to record the impacts on the ship within an extra set of textures that wrap around the entire ship, and to then use these in the shaders to dynamically add the dents and burn in precisely the location your ship took the damage. However rather than just opting to blend in a simple damaged texture in these areas, we instead chose to model the type of damage much more accurately by recording four different quantities:
Temperature The current temperature of the hull Burn The maximum temperature the hull has been burnt with Thickness How much of the outer hull remains. Paint comes off first, then the underlying metal Deformation How much physical force the hull has taken to bend and distort it Using these four damage values we can make the hull glow with heat, make paint burn and bubble, peel paint off to expose the underlying metal, dent and deform the surface, and even cut holes through the hull to expose the internal wiring and mechanics. Rather than the internals of the ship only being modeled in specific locations we now model the internals under the vast majority of the hull. You might expect this would involve a lot of work for the artists, but they’ve come up with several methods of adding these internals very efficiently and the overall damage state setup is now significantly quicker than before.
Your ship’s life story
The really interesting thing about us having access to four different measures of damage is that these can be imprinted on your ship in a pattern and strength that is unique to each weapon, explosive or type of impact. So while lasers will cause your hull to light up for several seconds leaving burnt paint and exposed metal, a powerful ballistic might tear a hole straight through your hull. We’re just scratching the surface of how far we can go with this system, and we plan to soon upgrade the weapon/ammo code to expose more unique and physically realistic damage behaviors.
We’ve trialed this tech on the Gladius, and you’ll see for yourselves in 1.1.0 that the results are great. What you might not see is that the Gladius uses four times less memory than the other ships, and this equates to better performance for the backers. Our artists are happy as this will allow them to make ships more quickly, which ultimately gets this game in your hand sooner! You’ll also be glad to know we’ll be rolling this tech out on every new ship, and also retrofitting the older ships as we go along.
New tools
Additional tech needed to be developed for placing our Particle and Squib Effects to complete the look of our new damage pipeline. When a part such as a Wing detaches from the ship, Squibs and Particles detonate along the edge of the separation. The Squibs, when detonated, specifically cause holes and burn damage to appear on the skin of the ship, revealing the ‘guts’ of the ship underneath so that the piece of the ship looks like it was torn away from the body. Particles also fire off as pieces break off from the ship, adding dramatic smoke, explosions and sparks. A specialized art tool, developed by Matt Intrieri, was created to convert helper objects in 3DSMax into XML code to add the effect in-game. CIG’s Effects Artist, Mike Snowdon, used the tool to add the Particles and Squibs to the ship along the edges of each part of the ship, creating dynamic and realistic effects based on the ship’s systems at each location.
Next Steps
But this isn’t the end of the road for this tech, there’s still several major features we’re working on. One of these is particle effects that are created, simulated and rendered entirely on the GPU, and this gives them two huge advantages. The first is performance, we can spawn 10-100 times more GPU particles than CPU particles for the same cost. The other benefit is that they tie in perfectly with the precise damage you’ve taken, so as the hull burns you’ll get glowing embers falling off, when it takes physical damage you’ll see shards of metal fly off, and when you blow out a large section of the hull you’ll see space littered with the debris. We’re also working on some major optimizations using to the damage system using DirectX 11 features to ensure that it’ll still run fast when there’s twenty fighters attacking a capital ship!
The first thing we did when we got this system working was to have some fun and write our names into a ship with a Gatling gun! Now it’s your turn to have a play and we’re keen to hear what you all think of this new tech so please let us know on the forums.
The Future
With our new damage technology now in place, we continue to strive for even more realistic and efficient methods to push our graphics in all areas. We’ll be adding more effects under the skin of the ship as gaping holes are revealed, adding touches like sparks on damaged equipment under the skin. Several lighting and particle setups are being prototyped to take our ship interiors through Healthy, Damaged, Critical and Flatline states that will inform and immerse our players during battle. Our new state machine being developed called GOST, will determine the healthy (or unhealthy) flow of energy around the ships systems and will have a big impact on our multi-crew interactions and the effect of ship damage on them. Given the complexity of our largest ships, that are really like floating levels, big questions remain about hull breaches and how to portray critical damage in the vacuum of space and how this will affect players inside. And optimizations in all areas will allow us to add more and more players simultaneously to create massive multiplayer battles. We are very pleased and excited to be releasing this first iteration of our newly optimized damage technology and hope the players feel the same.
Grüße Bürger,
Wie einige von euch vielleicht schon beim letzten Blick auf Around the Vers oder die monatlichen Updates der Foundry 42 gesehen haben, waren wir seit einiger Zeit hart dabei, das Schadenssystem auf den Schiffen zu verbessern. Wir haben bereits in Arena Commander unser sehr leistungsfähiges und flexibles System zur Schadensbegrenzung auf Ihren Schiffen gezeigt, das in Kombination mit einigen großartigen Kunstwerken zu großartigen Ergebnissen führt. Aber eure Schiffe sind so ein großer Teil des Star Citizen Universums, dass wir dachten, wir müssten noch einige Schritte weiter gehen.
Also nahmen wir einen Top-Down-Blick auf unser Schadenssystem, um zu überprüfen, was wir verbessern könnten, und obwohl es eine große Befriedigung gibt, jeden Teil eines feindlichen Schiffes abzuschälen, wenn es größeren Schaden erleidet, waren wir der Meinung, dass wir den spezifischen Ort und die Art des verursachten Schadens besser darstellen könnten. Ob es sich nun um eine Projektilwaffe, eine Energiewaffe, eine Explosion oder ein Kratzen Ihres Schiffes nach einer fragwürdigen Landung handelt, wir möchten, dass Sie sie nur vom Blick auf Ihr Schiff unterscheiden können. Wir waren der Meinung, dass dies in unserem Spiel besonders wichtig sein würde, da wir wollen, dass jedes Schiff eine Geschichte darüber erzählt, was durchgemacht wurde.
Zwei weitere Bereiche, die wir verbessern wollten, waren die Zeit, die unser Künstler benötigt, um die zahlreichen Schadenszustände für jeden Teil des Schiffes zu erzeugen, und die hohen Speicherkosten, die diese Netze mit sich bringen, was sich als ein Problem erweisen könnte, wenn wir das Spiel vergrößern. Der Grund, warum die Schadenszustände so arbeitsintensiv sind, ist, dass jedes Schiff mehr als zehn Hauptteile hat, und jedes dieser Schiffe fünf Schadenszustände benötigt, um die verschiedenen Schadenshöhen darzustellen, dann erfordert jedes dieser bis zu fünf vereinfachte Netze, die wir verwenden, wenn sie weiter von der Kamera entfernt sind, um die Leistung zu erhöhen. Das entspricht über 200 Maschen pro Schiff!
Wenn du die aktuellen Schadenszustände in Arena Commander untersuchst, wirst du feststellen, dass die ersten beiden Schadenszustände in der Regel nur kleine Dellen, einige Verbrennungsschäden und vielleicht ein paar Panels enthalten, die weggeblasen wurden, wodurch einige Einbauten freigelegt wurden. Erst wenn Sie die 75% und 100% Schadenszustände erreichen, sehen Sie große Veränderungen der Silhouette, aber die früheren Schadenszustände haben immer noch die gleichen Speicherkosten. Unser Ziel war es also, den kleinen Schaden zu beheben, ohne ganz neue Netze erstellen zu müssen, was sowohl Speicherplatz als auch Künstlerzeit spart. Um dies zu tun, haben wir beschlossen, die Auswirkungen auf das Schiff in einem zusätzlichen Satz von Texturen aufzuzeichnen, die sich um das gesamte Schiff wickeln, und diese dann in den Shadern zu verwenden, um die Beulen dynamisch hinzuzufügen und genau an der Stelle zu verbrennen, an der Ihr Schiff den Schaden erlitten hat. Anstatt sich jedoch nur für eine einfache beschädigte Textur in diesen Bereichen zu entscheiden, haben wir uns stattdessen dafür entschieden, die Art des Schadens viel genauer zu modellieren, indem wir vier verschiedene Mengen erfasst haben:
Temperatur Die aktuelle Temperatur des Rumpfes Verbrennung Die maximale Temperatur, bei der der Rumpf mit der Dicke verbrannt wurde, wie viel von dem äußeren Rumpf übrig bleibt. Farbe kommt zuerst, dann die darunterliegende Metallverformung, wie viel physische Kraft der Rumpf aufgewendet hat, um ihn zu biegen und zu verformen. Mit diesen vier Schädigungswerten können wir den Rumpf mit Hitze zum Glühen bringen, Farbe zum Brennen und Blasen bringen, Farbe ablösen, um das darunterliegende Metall freizulegen, die Oberfläche zu verbeulen und zu verformen, und sogar Löcher durch den Rumpf schneiden, um die interne Verkabelung und Mechanik freizulegen. Anstatt die Einbauten des Schiffes, die nur an bestimmten Stellen modelliert werden, modellieren wir nun die Einbauten unter dem überwiegenden Teil des Rumpfes. Man könnte erwarten, dass dies für die Künstler viel Arbeit bedeuten würde, aber sie haben sich mehrere Methoden ausgedacht, um diese Einbauten sehr effizient hinzuzufügen, und der gesamte Schadenszustand ist nun deutlich schneller als zuvor.
Die Lebensgeschichte deines Schiffes
Das wirklich Interessante daran, dass wir Zugang zu vier verschiedenen Schadensmessungen haben, ist, dass diese auf Ihrem Schiff in einem Muster und einer Stärke aufgedruckt werden können, die für jede Waffe, jeden Sprengstoff oder jede Art von Aufprall einzigartig ist. So, während Laser Ihren Rumpf veranlassen, einige Sekunden lang zu leuchten und verbrannte Farbe und freiliegendes Metall zu hinterlassen, könnte eine leistungsfähige Ballistik ein Loch gerade durch Ihren Rumpf reißen. Wir kratzen nur an der Oberfläche, wie weit wir mit diesem System gehen können, und wir planen, den Waffen-/Ammocode in Kürze zu aktualisieren, um ein einzigartigeres und physikalisch realistischeres Schadensverhalten zu zeigen.
Wir haben diese Technologie an der Gladius getestet, und Sie werden in 1.1.0 selbst sehen, dass die Ergebnisse großartig sind. Was Sie vielleicht nicht sehen, ist, dass die Gladius viermal weniger Speicher verbraucht als die anderen Schiffe, und das bedeutet eine bessere Leistung für die Backer. Unsere Künstler sind glücklich, da sie dadurch schneller Schiffe bauen können, was Ihnen dieses Spiel letztendlich früher in die Hand gibt! Sie werden auch froh sein zu wissen, dass wir diese Technologie auf jedem neuen Schiff einführen und auch die älteren Schiffe nachrüsten werden.
Neue Werkzeuge
Zusätzliche Technologien für die Platzierung unserer Partikel- und Squib-Effekte mussten entwickelt werden, um das Aussehen unserer neuen Schadenspipeline zu vervollständigen. Wenn sich ein Teil wie ein Flügel vom Schiff löst, explodieren Knall und Partikel am Rand der Trennung. Die Knallfrösche verursachen bei der Detonation insbesondere Löcher und Verbrennungsschäden auf der Haut des Schiffes und enthüllen die "Eingeweide" des darunter liegenden Schiffes, so dass das Stück des Schiffes aussieht, als wäre es vom Körper abgerissen worden. Partikel feuern auch ab, wenn Stücke vom Schiff abbrechen und dramatischen Rauch, Explosionen und Funken erzeugen. Ein spezielles Kunstwerkzeug, entwickelt von Matt Intrieri, wurde entwickelt, um Helferobjekte in 3DSMax in XML-Code zu konvertieren, um den Effekt im Spiel hinzuzufügen. Mike Snowdon, der Effektkünstler der CIG, benutzte das Tool, um die Partikel und Knallfrösche dem Schiff entlang der Kanten jedes Schiffssegments hinzuzufügen und dynamische und realistische Effekte basierend auf den Schiffssystemen an jedem Ort zu erzeugen.
Nächste Schritte
Aber das ist noch nicht das Ende des Weges für diese Technologie, es gibt noch einige wichtige Features, an denen wir arbeiten. Einer davon sind Partikeleffekte, die vollständig auf dem Grafikprozessor erzeugt, simuliert und gerendert werden, was ihnen zwei große Vorteile bringt. Das erste ist die Leistung, wir können 10-100 mal mehr GPU-Partikel als CPU-Partikel zu den gleichen Kosten erzeugen. Der andere Vorteil ist, dass sie perfekt mit dem genauen Schaden zusammenhängen, den Sie erlitten haben, so dass Sie beim Verbrennen des Rumpfes glühende Glut erhalten, die abfällt, wenn es physischen Schaden nimmt, werden Sie Metallsplitter davonfliegen sehen, und wenn Sie einen großen Teil des Rumpfes ausblasen, werden Sie Raum sehen, der mit den Ablagerungen übersät ist. Wir arbeiten auch an einigen wichtigen Optimierungen für das Schadenssystem mit DirectX 11-Funktionen, um sicherzustellen, dass es auch dann noch schnell läuft, wenn zwanzig Kämpfer ein Großschiff angreifen!
Das erste, was wir taten, als wir dieses System zum Laufen brachten, war, etwas Spaß zu haben und unsere Namen in ein Schiff mit einer Gatling-Pistole zu schreiben! Jetzt sind Sie an der Reihe, ein Stück zu spielen, und wir sind gespannt, was Sie alle von dieser neuen Technologie halten, also lassen Sie es uns bitte im Forum wissen.
Die Zukunft
Mit unserer neuen Schadenstechnologie streben wir weiterhin nach noch realistischeren und effizienteren Methoden, um unsere Grafiken in allen Bereichen zu verbessern. Wir werden weitere Effekte unter der Haut des Schiffes hinzufügen, wenn klaffende Löcher aufgedeckt werden, und Berührungen wie Funken auf beschädigten Geräten unter der Haut hinzufügen. Mehrere Beleuchtungs- und Partikel-Setups werden prototypisch entwickelt, um unsere Schiffsinnenräume durch die Zustände Healthy, Damaged, Critical und Flatline zu bringen, die unsere Spieler während des Kampfes informieren und eintauchen werden. Unsere neue Zustandsmaschine GOST wird den gesunden (oder ungesunden) Energiefluss um die Schiffssysteme herum bestimmen und einen großen Einfluss auf unsere Wechselwirkungen zwischen mehreren Besatzungen und die Auswirkungen von Schiffsschäden auf sie haben. Angesichts der Komplexität unserer größten Schiffe, die wirklich wie schwimmende Levels sind, bleiben große Fragen über Hüllenbrüche und wie man kritische Schäden im Vakuum des Weltraums darstellen kann und wie sich dies auf die Spieler im Inneren auswirken wird. Und Optimierungen in allen Bereichen werden es uns ermöglichen, immer mehr Spieler gleichzeitig hinzuzufügen, um massive Multiplayer-Kämpfe zu ermöglichen. Wir freuen uns sehr und freuen uns, diese erste Iteration unserer neu optimierten Schadenstechnologie veröffentlichen zu können und hoffen, dass die Spieler das gleiche Gefühl haben.
Wie einige von euch vielleicht schon beim letzten Blick auf Around the Vers oder die monatlichen Updates der Foundry 42 gesehen haben, waren wir seit einiger Zeit hart dabei, das Schadenssystem auf den Schiffen zu verbessern. Wir haben bereits in Arena Commander unser sehr leistungsfähiges und flexibles System zur Schadensbegrenzung auf Ihren Schiffen gezeigt, das in Kombination mit einigen großartigen Kunstwerken zu großartigen Ergebnissen führt. Aber eure Schiffe sind so ein großer Teil des Star Citizen Universums, dass wir dachten, wir müssten noch einige Schritte weiter gehen.
Also nahmen wir einen Top-Down-Blick auf unser Schadenssystem, um zu überprüfen, was wir verbessern könnten, und obwohl es eine große Befriedigung gibt, jeden Teil eines feindlichen Schiffes abzuschälen, wenn es größeren Schaden erleidet, waren wir der Meinung, dass wir den spezifischen Ort und die Art des verursachten Schadens besser darstellen könnten. Ob es sich nun um eine Projektilwaffe, eine Energiewaffe, eine Explosion oder ein Kratzen Ihres Schiffes nach einer fragwürdigen Landung handelt, wir möchten, dass Sie sie nur vom Blick auf Ihr Schiff unterscheiden können. Wir waren der Meinung, dass dies in unserem Spiel besonders wichtig sein würde, da wir wollen, dass jedes Schiff eine Geschichte darüber erzählt, was durchgemacht wurde.
Zwei weitere Bereiche, die wir verbessern wollten, waren die Zeit, die unser Künstler benötigt, um die zahlreichen Schadenszustände für jeden Teil des Schiffes zu erzeugen, und die hohen Speicherkosten, die diese Netze mit sich bringen, was sich als ein Problem erweisen könnte, wenn wir das Spiel vergrößern. Der Grund, warum die Schadenszustände so arbeitsintensiv sind, ist, dass jedes Schiff mehr als zehn Hauptteile hat, und jedes dieser Schiffe fünf Schadenszustände benötigt, um die verschiedenen Schadenshöhen darzustellen, dann erfordert jedes dieser bis zu fünf vereinfachte Netze, die wir verwenden, wenn sie weiter von der Kamera entfernt sind, um die Leistung zu erhöhen. Das entspricht über 200 Maschen pro Schiff!
Wenn du die aktuellen Schadenszustände in Arena Commander untersuchst, wirst du feststellen, dass die ersten beiden Schadenszustände in der Regel nur kleine Dellen, einige Verbrennungsschäden und vielleicht ein paar Panels enthalten, die weggeblasen wurden, wodurch einige Einbauten freigelegt wurden. Erst wenn Sie die 75% und 100% Schadenszustände erreichen, sehen Sie große Veränderungen der Silhouette, aber die früheren Schadenszustände haben immer noch die gleichen Speicherkosten. Unser Ziel war es also, den kleinen Schaden zu beheben, ohne ganz neue Netze erstellen zu müssen, was sowohl Speicherplatz als auch Künstlerzeit spart. Um dies zu tun, haben wir beschlossen, die Auswirkungen auf das Schiff in einem zusätzlichen Satz von Texturen aufzuzeichnen, die sich um das gesamte Schiff wickeln, und diese dann in den Shadern zu verwenden, um die Beulen dynamisch hinzuzufügen und genau an der Stelle zu verbrennen, an der Ihr Schiff den Schaden erlitten hat. Anstatt sich jedoch nur für eine einfache beschädigte Textur in diesen Bereichen zu entscheiden, haben wir uns stattdessen dafür entschieden, die Art des Schadens viel genauer zu modellieren, indem wir vier verschiedene Mengen erfasst haben:
Temperatur Die aktuelle Temperatur des Rumpfes Verbrennung Die maximale Temperatur, bei der der Rumpf mit der Dicke verbrannt wurde, wie viel von dem äußeren Rumpf übrig bleibt. Farbe kommt zuerst, dann die darunterliegende Metallverformung, wie viel physische Kraft der Rumpf aufgewendet hat, um ihn zu biegen und zu verformen. Mit diesen vier Schädigungswerten können wir den Rumpf mit Hitze zum Glühen bringen, Farbe zum Brennen und Blasen bringen, Farbe ablösen, um das darunterliegende Metall freizulegen, die Oberfläche zu verbeulen und zu verformen, und sogar Löcher durch den Rumpf schneiden, um die interne Verkabelung und Mechanik freizulegen. Anstatt die Einbauten des Schiffes, die nur an bestimmten Stellen modelliert werden, modellieren wir nun die Einbauten unter dem überwiegenden Teil des Rumpfes. Man könnte erwarten, dass dies für die Künstler viel Arbeit bedeuten würde, aber sie haben sich mehrere Methoden ausgedacht, um diese Einbauten sehr effizient hinzuzufügen, und der gesamte Schadenszustand ist nun deutlich schneller als zuvor.
Die Lebensgeschichte deines Schiffes
Das wirklich Interessante daran, dass wir Zugang zu vier verschiedenen Schadensmessungen haben, ist, dass diese auf Ihrem Schiff in einem Muster und einer Stärke aufgedruckt werden können, die für jede Waffe, jeden Sprengstoff oder jede Art von Aufprall einzigartig ist. So, während Laser Ihren Rumpf veranlassen, einige Sekunden lang zu leuchten und verbrannte Farbe und freiliegendes Metall zu hinterlassen, könnte eine leistungsfähige Ballistik ein Loch gerade durch Ihren Rumpf reißen. Wir kratzen nur an der Oberfläche, wie weit wir mit diesem System gehen können, und wir planen, den Waffen-/Ammocode in Kürze zu aktualisieren, um ein einzigartigeres und physikalisch realistischeres Schadensverhalten zu zeigen.
Wir haben diese Technologie an der Gladius getestet, und Sie werden in 1.1.0 selbst sehen, dass die Ergebnisse großartig sind. Was Sie vielleicht nicht sehen, ist, dass die Gladius viermal weniger Speicher verbraucht als die anderen Schiffe, und das bedeutet eine bessere Leistung für die Backer. Unsere Künstler sind glücklich, da sie dadurch schneller Schiffe bauen können, was Ihnen dieses Spiel letztendlich früher in die Hand gibt! Sie werden auch froh sein zu wissen, dass wir diese Technologie auf jedem neuen Schiff einführen und auch die älteren Schiffe nachrüsten werden.
Neue Werkzeuge
Zusätzliche Technologien für die Platzierung unserer Partikel- und Squib-Effekte mussten entwickelt werden, um das Aussehen unserer neuen Schadenspipeline zu vervollständigen. Wenn sich ein Teil wie ein Flügel vom Schiff löst, explodieren Knall und Partikel am Rand der Trennung. Die Knallfrösche verursachen bei der Detonation insbesondere Löcher und Verbrennungsschäden auf der Haut des Schiffes und enthüllen die "Eingeweide" des darunter liegenden Schiffes, so dass das Stück des Schiffes aussieht, als wäre es vom Körper abgerissen worden. Partikel feuern auch ab, wenn Stücke vom Schiff abbrechen und dramatischen Rauch, Explosionen und Funken erzeugen. Ein spezielles Kunstwerkzeug, entwickelt von Matt Intrieri, wurde entwickelt, um Helferobjekte in 3DSMax in XML-Code zu konvertieren, um den Effekt im Spiel hinzuzufügen. Mike Snowdon, der Effektkünstler der CIG, benutzte das Tool, um die Partikel und Knallfrösche dem Schiff entlang der Kanten jedes Schiffssegments hinzuzufügen und dynamische und realistische Effekte basierend auf den Schiffssystemen an jedem Ort zu erzeugen.
Nächste Schritte
Aber das ist noch nicht das Ende des Weges für diese Technologie, es gibt noch einige wichtige Features, an denen wir arbeiten. Einer davon sind Partikeleffekte, die vollständig auf dem Grafikprozessor erzeugt, simuliert und gerendert werden, was ihnen zwei große Vorteile bringt. Das erste ist die Leistung, wir können 10-100 mal mehr GPU-Partikel als CPU-Partikel zu den gleichen Kosten erzeugen. Der andere Vorteil ist, dass sie perfekt mit dem genauen Schaden zusammenhängen, den Sie erlitten haben, so dass Sie beim Verbrennen des Rumpfes glühende Glut erhalten, die abfällt, wenn es physischen Schaden nimmt, werden Sie Metallsplitter davonfliegen sehen, und wenn Sie einen großen Teil des Rumpfes ausblasen, werden Sie Raum sehen, der mit den Ablagerungen übersät ist. Wir arbeiten auch an einigen wichtigen Optimierungen für das Schadenssystem mit DirectX 11-Funktionen, um sicherzustellen, dass es auch dann noch schnell läuft, wenn zwanzig Kämpfer ein Großschiff angreifen!
Das erste, was wir taten, als wir dieses System zum Laufen brachten, war, etwas Spaß zu haben und unsere Namen in ein Schiff mit einer Gatling-Pistole zu schreiben! Jetzt sind Sie an der Reihe, ein Stück zu spielen, und wir sind gespannt, was Sie alle von dieser neuen Technologie halten, also lassen Sie es uns bitte im Forum wissen.
Die Zukunft
Mit unserer neuen Schadenstechnologie streben wir weiterhin nach noch realistischeren und effizienteren Methoden, um unsere Grafiken in allen Bereichen zu verbessern. Wir werden weitere Effekte unter der Haut des Schiffes hinzufügen, wenn klaffende Löcher aufgedeckt werden, und Berührungen wie Funken auf beschädigten Geräten unter der Haut hinzufügen. Mehrere Beleuchtungs- und Partikel-Setups werden prototypisch entwickelt, um unsere Schiffsinnenräume durch die Zustände Healthy, Damaged, Critical und Flatline zu bringen, die unsere Spieler während des Kampfes informieren und eintauchen werden. Unsere neue Zustandsmaschine GOST wird den gesunden (oder ungesunden) Energiefluss um die Schiffssysteme herum bestimmen und einen großen Einfluss auf unsere Wechselwirkungen zwischen mehreren Besatzungen und die Auswirkungen von Schiffsschäden auf sie haben. Angesichts der Komplexität unserer größten Schiffe, die wirklich wie schwimmende Levels sind, bleiben große Fragen über Hüllenbrüche und wie man kritische Schäden im Vakuum des Weltraums darstellen kann und wie sich dies auf die Spieler im Inneren auswirken wird. Und Optimierungen in allen Bereichen werden es uns ermöglichen, immer mehr Spieler gleichzeitig hinzuzufügen, um massive Multiplayer-Kämpfe zu ermöglichen. Wir freuen uns sehr und freuen uns, diese erste Iteration unserer neu optimierten Schadenstechnologie veröffentlichen zu können und hoffen, dass die Spieler das gleiche Gefühl haben.
Greetings Citizens,
As some of you may have seen from the recent sneak peek on Around the Verse or the Foundry 42 monthly updates, we’ve been hard at work for some time to improve the damage system on the ships. We’ve already shown in Arena Commander our very powerful and flexible system for controlling the damage on your ships, which combined with some awesome artwork gives some great results. But your ships are such a big part of the Star Citizen universe we felt we had to go several steps further.
So we took a top down look our damage system to review what we could improve, and although there is great satisfaction in peeling off each part of an enemy ship when they take major damage, we felt we could better represent the specific location and type of damage inflicted. Whether it be a projectile weapon, an energy weapon, an explosion or scratching your ship after a dodgy landing, we want you to be able to differentiate them just from looking at your ship. We felt this was going to be especially important in our game as we want each ship to tell a story of what’s is been through.
Two other areas we wanted to improve on were the time it takes our artist to create the numerous damage states for each part of the ship, and the hefty memory cost these meshes come with, which could prove to be a problem as we scale up the game. The reason the damage states are so labour intensive is that each ship has over ten main parts, and each of these requires five damage states to represent the different levels of damage, then each of these requires up to five simplified meshes that we use when they’re further from the camera to save performance. This equates to over 200 meshes per ship!
When you examine the current damage states in Arena Commander you’ll notice that the first two damage states tend to just contain minor dents, some burn damage, and perhaps a few panels that have been blown off exposing some internals. It’s only when you get to the 75% and 100% damage states you start seeing major silhouette changes, however the earlier damage states still carry the same memory cost. So our goal was to try and achieve the minor damage without having to create whole new meshes, saving both memory and artist time. To do this we decided to record the impacts on the ship within an extra set of textures that wrap around the entire ship, and to then use these in the shaders to dynamically add the dents and burn in precisely the location your ship took the damage. However rather than just opting to blend in a simple damaged texture in these areas, we instead chose to model the type of damage much more accurately by recording four different quantities:
Temperature The current temperature of the hull Burn The maximum temperature the hull has been burnt with Thickness How much of the outer hull remains. Paint comes off first, then the underlying metal Deformation How much physical force the hull has taken to bend and distort it Using these four damage values we can make the hull glow with heat, make paint burn and bubble, peel paint off to expose the underlying metal, dent and deform the surface, and even cut holes through the hull to expose the internal wiring and mechanics. Rather than the internals of the ship only being modeled in specific locations we now model the internals under the vast majority of the hull. You might expect this would involve a lot of work for the artists, but they’ve come up with several methods of adding these internals very efficiently and the overall damage state setup is now significantly quicker than before.
Your ship’s life story
The really interesting thing about us having access to four different measures of damage is that these can be imprinted on your ship in a pattern and strength that is unique to each weapon, explosive or type of impact. So while lasers will cause your hull to light up for several seconds leaving burnt paint and exposed metal, a powerful ballistic might tear a hole straight through your hull. We’re just scratching the surface of how far we can go with this system, and we plan to soon upgrade the weapon/ammo code to expose more unique and physically realistic damage behaviors.
We’ve trialed this tech on the Gladius, and you’ll see for yourselves in 1.1.0 that the results are great. What you might not see is that the Gladius uses four times less memory than the other ships, and this equates to better performance for the backers. Our artists are happy as this will allow them to make ships more quickly, which ultimately gets this game in your hand sooner! You’ll also be glad to know we’ll be rolling this tech out on every new ship, and also retrofitting the older ships as we go along.
New tools
Additional tech needed to be developed for placing our Particle and Squib Effects to complete the look of our new damage pipeline. When a part such as a Wing detaches from the ship, Squibs and Particles detonate along the edge of the separation. The Squibs, when detonated, specifically cause holes and burn damage to appear on the skin of the ship, revealing the ‘guts’ of the ship underneath so that the piece of the ship looks like it was torn away from the body. Particles also fire off as pieces break off from the ship, adding dramatic smoke, explosions and sparks. A specialized art tool, developed by Matt Intrieri, was created to convert helper objects in 3DSMax into XML code to add the effect in-game. CIG’s Effects Artist, Mike Snowdon, used the tool to add the Particles and Squibs to the ship along the edges of each part of the ship, creating dynamic and realistic effects based on the ship’s systems at each location.
Next Steps
But this isn’t the end of the road for this tech, there’s still several major features we’re working on. One of these is particle effects that are created, simulated and rendered entirely on the GPU, and this gives them two huge advantages. The first is performance, we can spawn 10-100 times more GPU particles than CPU particles for the same cost. The other benefit is that they tie in perfectly with the precise damage you’ve taken, so as the hull burns you’ll get glowing embers falling off, when it takes physical damage you’ll see shards of metal fly off, and when you blow out a large section of the hull you’ll see space littered with the debris. We’re also working on some major optimizations using to the damage system using DirectX 11 features to ensure that it’ll still run fast when there’s twenty fighters attacking a capital ship!
The first thing we did when we got this system working was to have some fun and write our names into a ship with a Gatling gun! Now it’s your turn to have a play and we’re keen to hear what you all think of this new tech so please let us know on the forums.
The Future
With our new damage technology now in place, we continue to strive for even more realistic and efficient methods to push our graphics in all areas. We’ll be adding more effects under the skin of the ship as gaping holes are revealed, adding touches like sparks on damaged equipment under the skin. Several lighting and particle setups are being prototyped to take our ship interiors through Healthy, Damaged, Critical and Flatline states that will inform and immerse our players during battle. Our new state machine being developed called GOST, will determine the healthy (or unhealthy) flow of energy around the ships systems and will have a big impact on our multi-crew interactions and the effect of ship damage on them. Given the complexity of our largest ships, that are really like floating levels, big questions remain about hull breaches and how to portray critical damage in the vacuum of space and how this will affect players inside. And optimizations in all areas will allow us to add more and more players simultaneously to create massive multiplayer battles. We are very pleased and excited to be releasing this first iteration of our newly optimized damage technology and hope the players feel the same.
As some of you may have seen from the recent sneak peek on Around the Verse or the Foundry 42 monthly updates, we’ve been hard at work for some time to improve the damage system on the ships. We’ve already shown in Arena Commander our very powerful and flexible system for controlling the damage on your ships, which combined with some awesome artwork gives some great results. But your ships are such a big part of the Star Citizen universe we felt we had to go several steps further.
So we took a top down look our damage system to review what we could improve, and although there is great satisfaction in peeling off each part of an enemy ship when they take major damage, we felt we could better represent the specific location and type of damage inflicted. Whether it be a projectile weapon, an energy weapon, an explosion or scratching your ship after a dodgy landing, we want you to be able to differentiate them just from looking at your ship. We felt this was going to be especially important in our game as we want each ship to tell a story of what’s is been through.
Two other areas we wanted to improve on were the time it takes our artist to create the numerous damage states for each part of the ship, and the hefty memory cost these meshes come with, which could prove to be a problem as we scale up the game. The reason the damage states are so labour intensive is that each ship has over ten main parts, and each of these requires five damage states to represent the different levels of damage, then each of these requires up to five simplified meshes that we use when they’re further from the camera to save performance. This equates to over 200 meshes per ship!
When you examine the current damage states in Arena Commander you’ll notice that the first two damage states tend to just contain minor dents, some burn damage, and perhaps a few panels that have been blown off exposing some internals. It’s only when you get to the 75% and 100% damage states you start seeing major silhouette changes, however the earlier damage states still carry the same memory cost. So our goal was to try and achieve the minor damage without having to create whole new meshes, saving both memory and artist time. To do this we decided to record the impacts on the ship within an extra set of textures that wrap around the entire ship, and to then use these in the shaders to dynamically add the dents and burn in precisely the location your ship took the damage. However rather than just opting to blend in a simple damaged texture in these areas, we instead chose to model the type of damage much more accurately by recording four different quantities:
Temperature The current temperature of the hull Burn The maximum temperature the hull has been burnt with Thickness How much of the outer hull remains. Paint comes off first, then the underlying metal Deformation How much physical force the hull has taken to bend and distort it Using these four damage values we can make the hull glow with heat, make paint burn and bubble, peel paint off to expose the underlying metal, dent and deform the surface, and even cut holes through the hull to expose the internal wiring and mechanics. Rather than the internals of the ship only being modeled in specific locations we now model the internals under the vast majority of the hull. You might expect this would involve a lot of work for the artists, but they’ve come up with several methods of adding these internals very efficiently and the overall damage state setup is now significantly quicker than before.
Your ship’s life story
The really interesting thing about us having access to four different measures of damage is that these can be imprinted on your ship in a pattern and strength that is unique to each weapon, explosive or type of impact. So while lasers will cause your hull to light up for several seconds leaving burnt paint and exposed metal, a powerful ballistic might tear a hole straight through your hull. We’re just scratching the surface of how far we can go with this system, and we plan to soon upgrade the weapon/ammo code to expose more unique and physically realistic damage behaviors.
We’ve trialed this tech on the Gladius, and you’ll see for yourselves in 1.1.0 that the results are great. What you might not see is that the Gladius uses four times less memory than the other ships, and this equates to better performance for the backers. Our artists are happy as this will allow them to make ships more quickly, which ultimately gets this game in your hand sooner! You’ll also be glad to know we’ll be rolling this tech out on every new ship, and also retrofitting the older ships as we go along.
New tools
Additional tech needed to be developed for placing our Particle and Squib Effects to complete the look of our new damage pipeline. When a part such as a Wing detaches from the ship, Squibs and Particles detonate along the edge of the separation. The Squibs, when detonated, specifically cause holes and burn damage to appear on the skin of the ship, revealing the ‘guts’ of the ship underneath so that the piece of the ship looks like it was torn away from the body. Particles also fire off as pieces break off from the ship, adding dramatic smoke, explosions and sparks. A specialized art tool, developed by Matt Intrieri, was created to convert helper objects in 3DSMax into XML code to add the effect in-game. CIG’s Effects Artist, Mike Snowdon, used the tool to add the Particles and Squibs to the ship along the edges of each part of the ship, creating dynamic and realistic effects based on the ship’s systems at each location.
Next Steps
But this isn’t the end of the road for this tech, there’s still several major features we’re working on. One of these is particle effects that are created, simulated and rendered entirely on the GPU, and this gives them two huge advantages. The first is performance, we can spawn 10-100 times more GPU particles than CPU particles for the same cost. The other benefit is that they tie in perfectly with the precise damage you’ve taken, so as the hull burns you’ll get glowing embers falling off, when it takes physical damage you’ll see shards of metal fly off, and when you blow out a large section of the hull you’ll see space littered with the debris. We’re also working on some major optimizations using to the damage system using DirectX 11 features to ensure that it’ll still run fast when there’s twenty fighters attacking a capital ship!
The first thing we did when we got this system working was to have some fun and write our names into a ship with a Gatling gun! Now it’s your turn to have a play and we’re keen to hear what you all think of this new tech so please let us know on the forums.
The Future
With our new damage technology now in place, we continue to strive for even more realistic and efficient methods to push our graphics in all areas. We’ll be adding more effects under the skin of the ship as gaping holes are revealed, adding touches like sparks on damaged equipment under the skin. Several lighting and particle setups are being prototyped to take our ship interiors through Healthy, Damaged, Critical and Flatline states that will inform and immerse our players during battle. Our new state machine being developed called GOST, will determine the healthy (or unhealthy) flow of energy around the ships systems and will have a big impact on our multi-crew interactions and the effect of ship damage on them. Given the complexity of our largest ships, that are really like floating levels, big questions remain about hull breaches and how to portray critical damage in the vacuum of space and how this will affect players inside. And optimizations in all areas will allow us to add more and more players simultaneously to create massive multiplayer battles. We are very pleased and excited to be releasing this first iteration of our newly optimized damage technology and hope the players feel the same.
Links
No links available.
Images
10Metadata
- CIG ID
- 14568
- Channel
- Engineering
- Category
- Development
- Series
- Design Post
- Comments
- 322
- Published
- 11 years ago (2015-03-08T00:00:00+00:00)