Die to Survive - Railshooter

This is also a nice idea. I did not test this for now.

The basic idea behind doing so much different models was to test Nanite the time i did this (and also just prototype different looks). Also if just using PolyPaint would work. Using no textures at all would be a big save for video memory used if it works, this is the reason why i try this every time i have an idea about this theme.

Based on this i did test this again. Today i figured out it only using PolyPaint works with high poly models, clean topo and rough surfaces (the last test did not seems to work, but i guess i did something wrong). Sadly this seems like will never work on a surface like marmor (even surfaces), but it can be used on rough things like stones. Need only to figure out now how small the height difference needs to be. And of course if this would effect the performance somehow.

Still needs more testing. But the model in the picture looks almost the same from far away or very close .

Inside: Video on how the model look changes from far to close

Video link


Edit:
Ok i think i found something like a sweet spot to use PolyPaint only now.
This is what (at least in my tests) kinda works the best. I think i just paint a few tombstones and set up a small graveyard scene to test this at runtime to see if this really works.

Edit2:
I did a last test before building a scene. I am im really happy now. Here i used the already finished models and used the textures as base for the polypaint only. I bet if you dont stick your nose into the model there would barly someone who can see the difference between the models with Textures and the ones only use Polypaint.

And the best about this, it looks from far away the same. I hope it works in game the same way. This would be just great.


The only think is left to do now: Figure out how to use blendshapes with static meshes and polypaint. This would be insane if this works. Lots of work to paint all models but you could have a lot of variation without the need of new models or a lot of textures/masks.

Seems like now all the test really were not just a waste of time. In this video i test if i can see some deforming or color changes of the models. Beside some strange little blinking sometime on the models nothing else went wrong.

All models only use vertex color information. No textures used at all.

The easy way to test more in deep if this is really usefull will be changing all the models in the demo and compare the performance of both versions.

1 Like

Wow. Very nice assortment of tombstones and graves. Looks like a pack missing in the marketplace. Haha. Are the tombstones destructible? Perfect for some additional chaos destruction effects!

Thank you. Yes i could sell this also as a pack, but at the moment i focus more to make this all running without using textures. The whole set is ~ 80 meshes. At the moment i still redo meshes to test a whole cemetery setting for a complete level.

And no they are not destructible at the moment. Did not hade the time to test chaos in deep. But basicly what i read so far this should not be a problem. Not sure if you need UV´s at the models for chaos to use textures at the breaking points, but even i want to use only poly paint all models have also UV´s.

I change all a way it is usable. Needs a lot of fine tuning to make this work but i hope it is worth the afford in the end. Here are a few of the signs i work on to place at the tombstones. I also have build 3D letters to use as text. Need to look how to build a BP to use them with just letters to type in into a textbox and then convert to the 3D models. No idea atm how this works :laughing:

2 Likes

The Signs are modular and awesome way to customize the Tombstones. Are they modeled or using a Blueprint to assemble them on-demand? The Marketplace needs a pack like this.

As the models set up at the moment i would not sell them as they are right now. The signs would be kinda ok. For example: all you see in the picture are 1UV map. But the tombstones have all there own UVs and also own textures.

What would need to be done:

I would need to redo a lot because this is not very good to use in terms of performance. Not sure if people would see the benefit or want to use only Polypainted models (the quality is simply a little lower and the poly count higher). So this needs also changed to have more materials (at least 2) so you could use basicly 1 material for the base and another for things like metal. I did a quick test with megascans textures and this basicly works as it is.

All is basicly ready, but this would need changed in a way so you can use 1 texture for all models and 1 for things like metal. And maybe masks for more variations or things like moss (atm it is as extra texture).

Also i do not have a good solution for the text. The options would be Meshes as text (tons of work to set up letters by hand), a simple textrenderer or a decal.

The bottomline: Yes i guess it is a good idea to put this into the marketplace but i need to think about a way how to do this.

Right now i started to look at a cemetery at a gameplay POV (this will be the first level). I need to build some sort of mausoleum to hide spawning enemies (basicly just some places to hide who fit a cemetery theme).
Also started to think about storytelling trough environment. So where you start you need to see immediately something went terrible wrong. I think about to pile up bodybags and showing corpses covered with blankets could explain this easy. Also open and fresh empty graves.


Just a quick test how environment storytelling could look like. Still all only Polypainted. seems like this can really work for a lot of models. The models do not really fit together very well but it works for testing :slight_smile:.

Edit:
This is just still testing. Building a BP for the selection all like meshes and material and set the location is a easy and fast thing to do.

1 Like

If you need to display 3D letters as models… like statues with collision or something, then do something similar to what blender3D does (create text object, convert text to mesh (vertice), extrude to 3D).

If you simply wish to display text on top of a tombstone you don’t have to make 3D models at all since you can just use a shader.

In both cases I’d not go for custom made 3D model letters… I’d pick a font compatible with as many languages as I need and use the font data in my shader somehow to offset or color letters on top of a stone.

1 Like

Thank you @Roy_Wierer.Seda145 i will this later if i really decide to put this into the marketplace. For now and my own needs i will try to do this within ZBrush and merge the text with the models.

Still needs more testing to only use polypaint. Not sure what it is but the GPU gets really hot even the GPU-RAM usage is very low if i only use this high dense polypainted models. Feels like this way i somehow break the LOD system of nanite or the render pipline cant handel the fast informations.
I guess to test this i need to do 2 scenes with high poly models and the same models but a way nanite can change the topo. Really not sure at the moment if this was an accident or this simply is to much what i try do. Just makes no sence to me right now.

Hard to tell. You could use generic benchmarking software and push the gpu to its limits on tests one by one while monitoring the hardware. “getting hot” doesn’t mean overheating unless you mean 80C or warmer and it differs per model too. it’s more of an issue with the GPU than the game. If it overheats on more standard GPUs / laptops etc too then those users might not be able to play it :sunny:

GPU is heating up to 75C, this is close to be dangerous, but it is in the editor. Need to test this in a final build for a scene.
Just startet a modular Mausoleum i will need. If you have in mind to use it both and a performance way it is beside having good UV´s for using almost any kind of textures is kinda easy.
This is a part of it where i build it around this idea.


The test in the engine - Models:

  • 4k poly / Texture & Normal
  • 130k poly / 1. Texture & Normal 2. Polypaint only
  • 500k poly / 1. Texture 2. Polypaint only

Edit:
Here i created a set of pillars ro work with all i want:

  • Modular
  • Seamless corners (basicly to allow the use almost all textures fro, the Megascan libary)
  • Clean Topo (allows better Vertex paint if needet)
  • ~ 100k each mesh for the use of textures
  • ~ 500k and > each mesh for Polypaint (can also be used with textures)
  • Easy to create more variations based on this meshes

More Pictures with the use of Megascan Textures inside




2 Likes

Another test about meshes for good performance with the pillar set.

  • The whole set uses only 1 Albedo texture.
  • Basicly every seamless texture will do the job for the sides without seeing any seams - top and bottom are not seamless but almost never seen. Perfect for the use of the megascans libary.
  • 20k each mesh ~ 1MB / only the brick ones are 300k each ~16MB (because of details).

Did not work with layers now but i know they use masks, and with masking i worked a lot. This would give more random look at the meshes with just 1-2 more textures. Need to try wich is better to use.
As the meshes are very smooth polypaint would not work or look very well.

2 Likes

Modular Pillar Set. Super Sweet!

Just a little picture of a set for storytelling to come. I guess i will rigging my little friends to get more easy variations of it if the set is finished (at lest easyer to pile them up).


Edit:
The first set is finished.

1 Like

A few more game ready meshes. Testing layered materials, this way i can get away with 3 textures for all meshes and a few masks for the layered materials.


Edit:
Lights test, 2 textures and 1 mask for all meshes used.

2 Likes

At some point you walk into a room and see these, 10 minutes later you return and they are all gone chasing someone :slight_smile: the magic of zombies. Nice models, very detailed. the wrinkles in the cloth are a very nice touch else the material looks very elastic or vacuum

2 Likes

The models are a compromise to use all sorts of material on the same mesh. The idea is getting away with 1 material using 1 texture for base colors, 1 for blood and 1 for dirt using masks because the are very small for the all models.
If needet just switch between all textures and use every texture you want.

Was thinking about sometihing similar on how to use it. But as you move to fast with a rail shooter i guess i will need to do this a little different. Like starting and see all this filled bags and covered bodys. A little later you see empty bags like in this picture. I think if somebody see this he knows there is something around there.

Was trying if i can get away using the same material and it kinda works. I noticed something strange while trying, seems like i did something wrong within the layered material so the colors somehow depend on the angel on the light and/or rotation of the mesh :laughing:

3 Likes

Another set build a way to place it on some sort of morgue table or stretcher.
I created way to much, that i think about to sell parts of it in the marketplace :rofl:

2 Likes

Hi @Thorsten09,

Went to the Arcade (https://www.mainevent.com/) Yesterday and played…

Awesome Light Gun Rail Shooter Fun. These games keep you so busy shooting you don’t have time to do anything else LOL.

All You Do is Shoot!
Inspired

Of course, after having all this fun at the Arcade playing Alien Armageddon and others. I found New Railshooter Inspirations!

In Aliens Armageddon the FPS Weapon-In-Corner caught my attention. It sparked ideas of blending a True FPS and Railshooter together, seamlessly switching between the two on-demand and scripted. I prefer True First Person using Full 3D Body + Camera Mounted to head socket OVER Arms only Approach and always up for a debate on this topic. hehe.

Daily use of V8SUPERCAM influenced thoughts about game play in multiple perspectives from Top Down to First Person. Actually many Railshooters offer this. I desire to push it to the extreme. I also thought about offering Avatar + Reticle (Cursor) visibility options: Avatar + Reticle, Avatar Only, and Reticle Only. I believe the Reticle Only offers another First Perspective slightly different than common Weapon-In-Corner First Person.

More than Meets the Eye

I definitely want to do something elaborate with Reticles. :no_entry_sign: No Sprites. Give it as much love as the Weapon itself. Make it full 3D with PBR Materials ( Metallics :slight_smile: ), Animations, VFX, and SFX. Reticle Customization! I think I handle the modeling of reticles.

Mind, Body & Guns

As I continued to ponder my thoughts, I went deeper into a Manual & Procedural Implementation. Splitting into 3 sections:

  1. Avatar Body Movement
  2. Camera Focus / Rotation
  3. Weapon (one or more ie Dual Wielding) Selection, Targeting, Aiming and Firing.

I could offer on-demand Procedural | Manual Play Control of the Sections, or Selection of pre-created Play Control Schemes between the sections allowing the player to experience the game with different types of Play. I even gave the Play Control Schemes names. haha:

  • Run & Gun - Manual Bod + Auto Cam + Manual Dual Guns
  • One Arm Bandit - Manual Bod + Manual Cam + 1 Manual Gun / 1 Auto Gun
  • Evil Eye - Manual Bod + Manual Cam + Auto Dual Guns
  • Full Auto Pilot - Auto Body + Auto Cam + Auto Dual Guns
Mount & Focus

I already handle the sections manually, thus, I ponder more so on Procedural Implementation. I view the Task of developing a Procedural Railshooter as a matter of automating Camera Location and Rotation. Because, All You Do is Shoot!

With this notion, one does not necessarily need to move the Camera along a static conceptual rail such as a spline, but create a dynamic, fluid conceptual rail of movement by interpolating Camera Location and Rotation.

Instead of applying location and rotation directly to the camera, we use two objects that we can manipulate independently and dynamically to control the Camera Location and Rotation in the same fashion. These two objects are called: Mount and Focus (Look At Target).

Mount is the Object the Camera attached to. We move the Mount to control the Camera Location. Focus is the Object that Camera Rotation is locked on. We move the Focus to control the Cameras Rotation. Simply change the Mount and Focus and interpolate between previous and new location/rotation.

Procedural Railshooter

Step 1: Auto Bod

A Character Pawn can be AI Controlled using UE Navigation Subsystems. This is my go to (pun intended) as I’ve already have worked with this system. I consider this to be the first and easiest step to take towards an Automated Railshooter System.

I anticipate the need to implement a form of Decision Making Algorithm {Behavior Tree, State Tree, State Machine, Rules-based Stack, etc} to determine and priority for Paths to Take, Pause Movement, Execute an Event: Cutscene Execution, Spawn Actors, and other Actions.

Step 2: Auto Cam

Continuation with the concept of Mount & Focus, Attaching a Camera to an object that can be moved is commonplace. Cameras are often attached to player controlled Pawns. For Automated Camera Location I’m attaching the Camera to a Pawn Character Body that uses AI Navigation.

Automated Camera Rotation is the job of the Focus Object and a Focus Object can be any Persons, Places, Things deemed relevant for the Player. Like Movement, I would implement a form of Decision Making Algorithm to determine and Focus Object Priority. Underlining Factors of the priority could be based on Player’s goals of maintaining health, acquiring wealth, acquiring high score.

V8SUPERCAM already functions as highly dynamic multi-perspective camera system based on the concept of Mount and Focus. I would use a Decision Making Algorithms to manage and execute on-demand switching of cameras with the same functions Players use to do it manually. This would be my approach to handling Procedural / Manual Play Control for Body, Cam, Weapons.

Step 3: Auto Gun

I want Dual Wielding in my Rail Shooter. Why pause the action when you need a break, keep SHOOTING. Don’t have a friendly Bot handy to assist, You have another Hand Gun to enlist.

Prototyping

I was too excited after my trip to the Arcade so I jump on the workstation and immediately started testing my ideas.

Using previous Character Bot AI to use waypoints to move between locations. I attached the Possessed Player Character with Cameras using the same Skeleton to the Bot and sync the skeletons.

PROCEDURAL RAILSHOOTER - First Step. AI Navigation. - YouTube

2 Likes

This is really an cool rail shooter, very arcady and beside the beloved Alien IP this reminds me a lot on dead storm pirates. Just shoot all the time what is always fun.

Using a 3D model as crosshair could be tricky. I remember i was trying this also but it was just very hard to shoot precise if you do a trace from this point and to costy performance wise. But i abandond this idea very fast maybe i just did not find the right way to use it.

There are a lot of way you can do a rail shooter. I stick with what i have till it is finished. Never a good idea changing something in the middle. I build the whole framework a way to change it in almost any direction i will go after this. The only i guess i need to add is using “look at”, i was trying to avoid this but this will bite me with the headshot mode. If you shoot both legs the enemy needs to crawl to your position then …

But after seeing this i should go back to the gore models. I created a last set today. And i am very happy i can use all meshes (around 100 now lol) with a single 1 base, 1 blood and 1 dirt texture. Very perfomant this way if wanted/needet.
Oh and i needet to create new models for the strecher, the other ones just did not fit sadly.

I tested this so intensive because i have still to change a lot of models. Was searching for the best way performance wise. This is what i (hopefully) know now :slight_smile: .

Hi @Thorsten09. Your rapid model creation is super impressive to me. And you are a Master of Master Materials as well. The level of detail and variation with this set blows my mind. I’m unable to wrap my head around the massive amounts of patience required to do it. I commend you for your patience and Amazing Work!

Lack of patience

I would be seeking a procedural way to do it, stick to using a single model with different transforms, or skip it all together just repurposing the zombies bodies and body parts on gurneys/stretches/beds using matched materials without actual covering or body bags. haha. I would cheat for sure.

Here be Pirates

OMG DeadStorm Pirates looks Awesome. I have never seen this before. That combined Firepower Mechanic is sweet. I can easily visualize this mechanic being implemented for both multiplayer single weapon, single player dual weapon, and multiplayer dual weapon (quad booster).

I like the idea of Shooting to Activate Power Ups/Abilities by

  • Shooting specific targets
  • Shooting multiple targets in a specific sequence
  • Shooting groups of matching targets in a specific timeframe.

I need those Golden Guns. I’m pirating that combined firepower mechanic and adding to that list for sure.

Reticle

I’ve been using a 3D Reticle with V8SUPERCAM due to fact the Avatar Body and Camera are decoupled and can be anywhere in 3D space at anytime. One of my simplest implementation has been placing it along the line of sight of the weapon’s barrel using a trace and setting position on object impact location as seen here.

The above implementation is based on Weapon Aim, then Crosshair is adjusted. In the case of a Railshooter its the reverse, based on the Crosshair screen pointer coordinates, then Weapon barrel adjusted (assuming Projectiles are spawned from weapon barrel). I suck at math, so i anticipate iterating to procedurally articulate the arm/hand to aim weapon barrel properly aligned with the Screen Location to World Space.

Technically, the Reticle is just a point in 3D space, but It can be represented as a 2D Sprite, Particle, or 3D Mesh {Spherical, 3D Plane / Shape / 342D Mesh Always Screen-facing }. I want to use all 3D no 2D at all if possible. In a Game Design where the Crosshair is the main Star on screen, I feel they deserve the same treatment as Weapons on screen.