Modular Vehicle Vol.2 now finally complete.
Video: https://www.youtube.com/playlist?list=PL_KX9infRdRhJ_wabAlV2cmSgxSvapqeO
High poly versions can be found on my Artstation: https://www.artstation.com/keos
Full project available on UE4 Marketplace: https://www.unrealengine.com/marketplace/en-US/slug/modular-vehicle-vol
Vehicles from this project also available on Unity Asset Store: https://assetstore.unity.com/publishers/21665
Following vehicles were used as references in order to make modules for this pack:
- Bereg A-222 130mm coastal mobile artillery system
- АА-60-160-01 Airport Crash Tender Vehicle
- MAZ 543 cargo truck
- Fighting vehicle for support combat duty missile system
- 9K58 "Smerch"
Main features:- 5 vehicle presets with a lot of module combinations between them
Advanced customization system
Dynamic vehicle creation at runtime
Add your own modules/module types to extend existing capabilities
N-wheeled vehicle support
Different anti-stuck measures (savepoints, automatic and manual respawn, wheel jumpers)
AI for aircraft, character, vehicle
Health/Damage system
Various weapon and projectile blueprints
Showcase level with advanced landscape material setup and procedural grass and trees placement
Snow/Dirt trails with displacement support
Procedural Wet/Sand/Mud/Snow surface effects on the vehicle
Lots of built-in useful blueprints: teleporter, capture point, enemy spawner, etc.
Customization System features:Change Materials
Edit selected module material
Edit all materials at once
Material layers support
Texture masks support
Custom skins support
Support for changing custom scalar, vector and texture parameters
Change Modules
Change Decals
Save/Load vehicle data
Pre-defined vehicle configurations
Weapons/accessories support via custom sockets
Module compatibility checks
Module installation checks
Take screenshots
Change environments
Customization level
Test all module actions
Vehicle weapons:- Artillery turret
- Rocket launcher turret
- Rocket pod
- Gatling gun
- Rotateable machine gun
- Automatic AA turret
Module types:- Chassis
- Main Module
- Cabin
- Side Bags
- Back Stand
- Stopper
- Middle Section
- Weapons
- Accessories
- Boosters
- Engine
- Brakes
Final update:
Replies
I didn't take any images of the first couple of days, because I wasn't sure if it worth to show them.
Currently, I'm working on a high poly model. Lots of things need to be done, but at least I modeled main shapes and started to add more details to them.
Completed detalization of the turret and started to work on the middle section.
Completed middle section. Next is a driver's cabin.
Have an idea to make the whole vehicle modular, because on this chassis (MAZ-543) created a lot of vehicles, so it would be nice to swap artillery to rockets or change driver's cabin (or maybe add some crazy sci-fi modifications). Collections in Blender 2.8 makes this possible because now each huge component (like the whole turret) now exists in separate collections and I can easily export them, duplicate to make a high poly/game ready version or hide them.
Today I opened a new little trick for myself. Usually, I'm adding bevel modifier before subdiv modifier to save mesh form instead of putting a lot of edge loops (hello, Maya LT). But there is another way to achieve the same result plus add additional polishing effect. All you need to do is to add creases on all required edges, add subdiv modifier and then bevel modifier. Sounds like just swapping two modifiers, but it will help to save a lot of time, required to migrate asset to ZBrush, dynamesh and polish it when you can't achieve the same effect in a reasonable time with poly modeling in Blender (especially with complex booleans and curved surfaces). This method, however, not works every time and depends on the mesh topology after subdiv with creases and you need to tune the amount of bevels/subdivs to achieve the required result.
That was a tough day. Around 16 hours of modeling, but I finally finished the driver's cabin and chassis.
Day 9
Polishing - done. Simple cabin interior - done. High poly - done. Game ready with UV - done. Almost completed baking. Probably need another one day.
Really boring days with a monotonous work of processing hundreds of meshes.
Some renders of high poly version: https://www.artstation.com/artwork/OyPKRk
Exploded model in Marmoset Toolbag 3
Game ready model with applied baked maps in Substance Painter viewport
Some stats:
High Poly has 10kk polygons.
LOD0 has 200k polygons at this moment. I made a little research and found that cars in current AAA racing games may contain 200-300k polygons, so I think for a hero asset with such amount of details it's fine. LOD1 probably will be around 80k polygons, other LODs will contain even less amount of polygons by removing lots of pieces, which aren't visible from a distant view.
The mesh and baked normals look great, I look forward to seeing how the textures turn out.
Its always interesting to read about other peoples workflow, I'll have to try baking in marmoset
Mostly a technical day.
The goal was to set the UE4 project and get a simple driveable vehicle. I used my previous project - Modular Vehicle - as a base for this project to speed up things.
Day 14
Texturing workflow established.
After some research, I finally decided to use the same workflow as Epic Games used for Paragon. I tried to use layered material system (spent one day for that) but then saw that currently this system is discontinued (things may change this year or may not), so I didn’t risk to use it right now and rewrite everything with default material functions/materials. Of course, things may be much faster with layered materials feature (really much faster), but I found that currently it’s not stable and materials may not update automatically after tweaks, which may cause a lot of troubles.
I also tried to use Substance live-link plugin for UE4 but didn’t found how to use custom export presets, so it is currently useless for this workflow.
In Substance Painter, I did three custom export presets. One is for a single Base Material and contains Grim/Scratch/Custom/AO map. Second is for a Base Material + 3 Additional Materials + Grim/Scratch/Custom/AO. And the last one is for Base Material + 6 Additional Materials + Grim/Scratch/Height/AO (currently not in use).
Current custom channels:
U0 - Rubber
U1 - Steel
U2 - Black Metal
U3 - Grime
U4 - Scratch
U5 - Dust
What should be done next?
Better grime/scratch/dust masks
Better tiling materials for metals and rubber
Support of camouflages
Maybe add support for snow/wetness.
Paint additional normal details
There is also a chance that I will temporarily stop working on materials and start doing modules because it’s almost half a month, but guns still not firing
https://www.youtube.com/watch?v=ArJx7MxrSlA
Cant wait to see the final version
Day 45
Customization System Test #1
Video:
https://www.youtube.com/watch?v=aDO8Vx1Fih4
Day 47
Experimenting on Showcase Environment
I started to work on the Showcase level environment. Currently doing lots of research on landscape materials and vegetation. This screenshot was done during the research of some assets from Kite Demo. I don’t have a lot of experience in building open world environments, so things going slowly. Also working on new vehicle modules, one of them (fighting vehicle for support combat duty missile system) will be presented in the next update.
Completed high poly version of fighting vehicle for support combat duty missile system.
Game ready version is ready. Turret also working fine.
Day 52
Completed high poly version of 9K58 “Smerch”
Artstation (video included): https://www.artstation.com/artwork/BmJQvm
What's new:
In-game customization level screenshot examples:
The edge wear is way too even and looks like generated, try add some much larger scale details and erase 25% of your edge wear randomly, which is always a good trick. The base surfaces could also need some more variation. Adding some bleaching or dirt gradient on the sides would also help a lot make it look less samey.
Try also make the tires way rougher and maybe more of a light blue tint or such, right now it looks like toy plastic
Below the paint, there is the paint primer (which would be the white edge wear you are using, at least it looks like it) but the stronger wear (which is lacking) would go through that and reveal metal, which would surface darker highlights, giving it a far richer edge definition
Recently found this channel which is also really great to get better at wear
https://www.youtube.com/user/idaemon
That modeling workflow breakdown is super useful, I'm definitely saving this for future reference.
I would love to see some more renders of the textured game ready model.
One of the problems is that I need to provide such mask maps, which will be looking good by default and after you tune them in-game via customization system. Maybe the player would like to drive a pink vehicle, or colored into their country flag? Somebody like clean vehicles, somebody like dirty ones. I still need to do a lot of work on materials - for example, add support for dynamic snow/wet/dirt support, depending on landscape material. Don't know at this moment when I will start working on that because currently there are also a lot of other tasks in such areas like environment(landscape, foliage, trees, rocks), projectiles, vehicle code itself, AI, customization system, UI, SFX, VFX, etc...
Good job overall, congrat's and really appreciate the effort documenting both your thought process alongside this project's workflow. I'm thinking about doing something similar but a tracked vehicle, utilising another IDE.
Cheers.
This time I'm trying to use Gaea instead of World Machine to make height and layer maps for landscape.
The hardest thing in creating an open-world environment is to make everything compatible with everything else. Grass color should match landscape color to prevent any visible borders between near and far landscape tiling. Same with trees, rocks and all other assets. The whole landscape should match to real-world references and at the same time to the story and gameplay. I mean it's rather easy to make a good looking slice of open world for artwork, but pretty hard to make things work in real games, especially for such novices in this area, like me. On the other hand, the purpose of the Showcase level is to make the environment to test vehicles (with some basic quests and story), so I don't need to make a lot of assets for this. But I still need to add rocks, trees, buildings, landmarks and make it all compatible with each other in 1-2 weeks maximum because there are tons of other tasks and time is running out. Hope I will do this somehow...
https://www.youtube.com/watch?v=q15tzRrv7Xk
https://www.youtube.com/watch?v=kSBJ-ZBC9x8
https://www.youtube.com/watch?v=bqOCIBzihNk
First polishing sprint has been completed.
What's new:
- Vehicle HUD improvements - Main module UI / Active weapon UI.
- Documentation improvements. Documentation will be available here.
- Gamepad support improvements.
- Customization UI improvements - instead of two separate scroll boxes now we have a single panel on the left side of a screen to maximize visible area.
- Ammo/reloading support per main module projectile / vehicle weapon.
- LODs (all modules have skeletal meshes, so LODs were done manually).
- Collision improvements.
- The character now seats inside the driver's cabin (proper animation has been added).
- Boosters mesh has been added (previously the only VFX were visible during nitro/jumpers activation).
Next sprint will be focused on materials.
Day 100:
What’s new:
Modular Vehicle Vol.2 now finally complete.
Modular Vehicle Vol. 2 now available on UE4 Marketplace: https://www.unrealengine.com/marketplace/en-US/slug/modular-vehicle-vol
Vehicles from this project also available on Unity Asset Store: https://assetstore.unity.com/publishers/21665