Visual Style Guide: Difference between revisions
Hhyyrylainen (talk | contribs) (→3D Models: updated status of the 3D modelling constraints) |
|||
(15 intermediate revisions by 4 users not shown) | |||
Line 3: | Line 3: | ||
'''What is this page?''' | '''What is this page?''' | ||
This page is a global style guide for all stages of the game. All visual efforts should flow from the decisions written here. It is meant as a single-source-of-truth to help the game feel consistent, no matter who is contributing. It covers a wide variety of topics from in-game art to how branding should be handled. | This page is a global style guide for all stages of the game. All visual efforts should flow from the decisions written here. It is meant as a single-source-of-truth to help the game feel consistent, no matter who is contributing. It covers a wide variety of topics from in-game art to how branding should be handled. | ||
'''*This page is still heavily under construction.*''' | |||
== Design Philosophy & Art Direction == | == Design Philosophy & Art Direction == | ||
[[File:Disturbance.jpg|thumb]] | [[File:Disturbance by sciocont-d57qa0b.jpg|thumb|Concept art that captures the imagination by Sciocont]] | ||
Thrive is a game interested in resembling real biology. | Thrive is a game interested in resembling real biology. | ||
Realism should be | Realism should be favoured unless such a design would be highly unintuitive. There should also be influences from less realistic science fiction aesthetics, especially in the design of the GUI. | ||
Rules of thumb for asset design: | Rules of thumb for asset design: | ||
* '''Pseudo Randomness.''' Thrive prefers Textures with an organic feel. Perlin noise and real-world organism texturing go a long way. | * '''Pseudo Randomness.''' Thrive prefers Textures with an organic feel. Perlin noise and real-world organism texturing go a long way. | ||
* '''Realistic Organism | * '''Realistic Organism Colours.''' Thrive prefers colours found in real biological pigmentation. Focus on less saturated colors and blues, greens, reds and pale oranges. Exceptions can be made where distinction is needed. | ||
A repository of current assets can be found here: https://dev.revolutionarygamesstudio.com/lfs/2/assets | |||
Raw form of assets (when previous artists have remembered to upload them) can be found here (after logging in): https://dev.revolutionarygamesstudio.com/files/Raw%20Assets | |||
== Color Scheme == | == Color Scheme == | ||
Line 22: | Line 27: | ||
The UI currently has the following color scheme. | The UI currently has the following color scheme. | ||
[[File:Colorpalette.png| | [[File:Colorpalette.png|1000px|GUI Color palette]] | ||
== User Interface == | == User Interface == | ||
Line 55: | Line 60: | ||
Procedural models are created and updated by the game on the fly based on environmental or player input. There are several rules for creating each, and pre-made visual elements can be used (such as patterning on a membrane), but the exact mechanics describing how each may be generated are explained in the simulation specifics section. | Procedural models are created and updated by the game on the fly based on environmental or player input. There are several rules for creating each, and pre-made visual elements can be used (such as patterning on a membrane), but the exact mechanics describing how each may be generated are explained in the simulation specifics section. | ||
As with all games, keep polygon count in mind while modeling. | ''' Best Practices ''' | ||
As with all games, keep polygon count in mind while modeling. | |||
Triangles max counts ranges are the following: <br> | |||
- Microbe's organelles are 300 triangles max. (the less the better mostly with simple non-animated organelles) | |||
- Iron Chunks are 600 triangles max. Bigger chunks may use more triangles, but even them should be only about a 1000. | |||
- More to come later when we'll reach later stages<br> | |||
Animated models need to be delivered as .glb files (this format is easily exportable from blender without addons). Non-animated models should be converted to Godot's .mesh format when importing in most cases (more technical people than artists often handle this). The Godot editor allows resaving a mesh used in a loaded file as a .mesh file. Textures should preferably be separate files. Completed files can be uploaded through the [https://dev.revolutionarygamesstudio.com/files/Assets/README.txt ThriveDevCenter] (requires login with your developer account to view). Notifying the programming team / a programmer is the next step after finishing a model so that it can be put in the game. | |||
Organelle texture sizes should be 512x512. Currently only colour map, and emission map are supported (due to use of a custom shader), but a graphics programmer may add support for more in the future (for example bump mapping). | |||
Thrive is created in Godot, which is capable of using full PBR materials. Use of masks colour maps, normal maps, and transparency maps (?) is encouraged. Most resolution of texture maps is 512x512 pixels. The lower the better. Some organelles don't need to be that detailed. For chunk shaders colour and bump maps are supported. Chunks as they are bigger can aim for texture sizes of 1024x1024 (or higher if detail is needed) | |||
Colliders can be made in Godot from any mesh via the 3D viewport. A Simplified Convex Collision can be converted from a complex mesh, but it is advised to make a simplified version of the model yourself and convert that. Unique colliders are not needed for all objects, however are very nice to have (and most organelles have recently been given custom colliders). | |||
== Animations == | == Animations == | ||
Line 66: | Line 85: | ||
Some models are animated procedurally only in the sense that code is driving their animation. For example, models may have random rotation speed and position wiggle. Static models may also exhibit gradual changes of color. | Some models are animated procedurally only in the sense that code is driving their animation. For example, models may have random rotation speed and position wiggle. Static models may also exhibit gradual changes of color. | ||
== | == Still Art & Environment Maps == | ||
Here are some background examples: | |||
[[File:Mesopelagic bg.png|400px]] | |||
Latest revision as of 14:20, 18 November 2024
What is this page?
This page is a global style guide for all stages of the game. All visual efforts should flow from the decisions written here. It is meant as a single-source-of-truth to help the game feel consistent, no matter who is contributing. It covers a wide variety of topics from in-game art to how branding should be handled.
*This page is still heavily under construction.*
Design Philosophy & Art Direction
Thrive is a game interested in resembling real biology. Realism should be favoured unless such a design would be highly unintuitive. There should also be influences from less realistic science fiction aesthetics, especially in the design of the GUI.
Rules of thumb for asset design:
- Pseudo Randomness. Thrive prefers Textures with an organic feel. Perlin noise and real-world organism texturing go a long way.
- Realistic Organism Colours. Thrive prefers colours found in real biological pigmentation. Focus on less saturated colors and blues, greens, reds and pale oranges. Exceptions can be made where distinction is needed.
A repository of current assets can be found here: https://dev.revolutionarygamesstudio.com/lfs/2/assets
Raw form of assets (when previous artists have remembered to upload them) can be found here (after logging in): https://dev.revolutionarygamesstudio.com/files/Raw%20Assets
Color Scheme
As noted above, organisms should attempt biological realism here.
The UI currently has the following color scheme.
User Interface
Thrive will aim for a sleek, minimalistic user interface in an attempt to immerse the player.
A few global rules of thumb:
- Many elements should have toggle options to be shown on-screen or not.
- Each button/panel should convey only a few pieces of information.
- Icons in line with Thrive's iconography style should be used wherever possible.
- The user interface should strictly adhere to the color scheme above.
- GUI animations should be quick and simple.
- When the pause menu or other overlay is active, a transparent grey rectangle appears over the game screen with active GUI elements above it.
- Rectangle corners should be rounded (vertical and horizontal)
For specific views and design documents: https://wiki.revolutionarygamesstudio.com/wiki/User_Interface
Iconography Style
Icons and text should follow the color scheme above with the exception of compound or other icons which are identifiable by virtue of their unique color.
3D Models
There are two types of 3D models used in the game: static and procedural.
Static
Static models have pre-defined shape throughout all situations, so can be created by modelers beforehand.
Procedural
Procedural models are created and updated by the game on the fly based on environmental or player input. There are several rules for creating each, and pre-made visual elements can be used (such as patterning on a membrane), but the exact mechanics describing how each may be generated are explained in the simulation specifics section.
Best Practices
As with all games, keep polygon count in mind while modeling.
Triangles max counts ranges are the following:
- Microbe's organelles are 300 triangles max. (the less the better mostly with simple non-animated organelles)
- Iron Chunks are 600 triangles max. Bigger chunks may use more triangles, but even them should be only about a 1000.
- More to come later when we'll reach later stages
Animated models need to be delivered as .glb files (this format is easily exportable from blender without addons). Non-animated models should be converted to Godot's .mesh format when importing in most cases (more technical people than artists often handle this). The Godot editor allows resaving a mesh used in a loaded file as a .mesh file. Textures should preferably be separate files. Completed files can be uploaded through the ThriveDevCenter (requires login with your developer account to view). Notifying the programming team / a programmer is the next step after finishing a model so that it can be put in the game.
Organelle texture sizes should be 512x512. Currently only colour map, and emission map are supported (due to use of a custom shader), but a graphics programmer may add support for more in the future (for example bump mapping).
Thrive is created in Godot, which is capable of using full PBR materials. Use of masks colour maps, normal maps, and transparency maps (?) is encouraged. Most resolution of texture maps is 512x512 pixels. The lower the better. Some organelles don't need to be that detailed. For chunk shaders colour and bump maps are supported. Chunks as they are bigger can aim for texture sizes of 1024x1024 (or higher if detail is needed)
Colliders can be made in Godot from any mesh via the 3D viewport. A Simplified Convex Collision can be converted from a complex mesh, but it is advised to make a simplified version of the model yourself and convert that. Unique colliders are not needed for all objects, however are very nice to have (and most organelles have recently been given custom colliders).
Animations
Static models can exhibit dynamic behavior, but unlike the procedurally generated models, this behavior is pre-planned. Difficulties can arise when changing between different animations.
Some models are animated procedurally only in the sense that code is driving their animation. For example, models may have random rotation speed and position wiggle. Static models may also exhibit gradual changes of color.
Still Art & Environment Maps
Here are some background examples:
Font
The Jura font is used on heathers and panel names, while Lato is used on the text inside the panels.