very interested with how you progress, especially with the "alien" assets. always fun to see someone's ideas come to life. i always seem to start a new project each time i realize how bad i am at something, and work on that until i get inspired to return to the project(s). i have too many going as well lol.... but that IS how we learn, hands on (or fingertips lol).
Hostile Life Forms (Godot 4)
- Edited
REVBENT i always seem to start a new project each time i realize how bad i am at something, and work on that until i get inspired to return to the project(s).
same, but in my case, I could make anything I wanted, I know how to code it and how to model. the problem is it's a lot of work, you get tired over time, when you start a project you are full of energy and excitement, but as you continue to work on it that excitement goes away and it becomes tiresome, tedious, and then boring.
after failing enough times you learn to withstand failure and start to manage your time better to get things done, but also take the time to rest and think about something else, so when you go model or code you do it with a clear mind.
the room is almost finished, it just needs some lights and wires and pipes. the doors where not that bad after all, the textures were just not set to high quality (this is a tedious "feature" of godot).
next I need some light tubes and a bigger central light, once I replace the omni-lights with emission ambient light, the atmosphere will improve.
i like the feel of the room. there is a lot to catch your eye and keep you busy even when not engaged in gameplay.
just a different idea i had looking at the room... feel free to use it or not.... the center light could be like a projector, and below it you could have a sun of sorts as a ball of light. The classic projector rays leading from the outer edges of the fixture so your eyes understand its a "hologram". It would feel very alien i.m.o. and you seem to have the headroom to the ceiling. the same way of lighting could be applied to street lights, wall lights, beam lights, and the sort.
found some old incomplete blends, changed the materials for PBR ones and baked. I think I baked the albedo as srgb when it should've been linear, since the normal and roughness were, but I forgot.
here's the scene with the light tubes instead of omni-lights:
I also made a texture for using as projector mask with the flashlight. it's barely noticeable but it does help the atmosphere:
REVBENT just a different idea i had looking at the room... feel free to use it or not.... the center light could be like a projector, and below it you could have a sun of sorts as a ball of light. The classic projector rays leading from the outer edges of the fixture so your eyes understand its a "hologram". It would feel very alien i.m.o.
I havent though of what to add to these rooms, for now I'm making corridors and rooms. a hologram is a good idea.
I will slowly make assets to fill these rooms, I need to put interesting things so the levels don't feel repetitive.
REVBENT you seem to have the headroom to the ceiling. the same way of lighting could be applied to street lights, wall lights, beam lights, and the sort.
the whole scene is using a VoxelGI, It doesn't "need" lights, but I added spotlights to cast shadows on moving things like enemies. In this last screenshot I actually removed 4 lights.
ill definitely be keeping an eye on the development. very professional work. super interested in the character design as it progresses
- Edited
devlog: I looked at some level blueprints I made a long time ago and started to build it with the pieces to see what I need to model.
for now I'm using a modular system to build the levels out of corridors and rooms, but optimally I should make the entire level in blender. or not? if parts of the level are instanced and hidden during game that would help the GPU? I'll see how far I get.
I made a corner piece and a shorter corridor, then changed part of the intersecting room, but forgot to assign the material, so I need to re-export later. and then I started working on a "lobby" room. I need to make that center light because it's currently too dark:
update: the reason it looked so odd is because the material was too clean. so I added some smudges to the material color, normal and roughness for the floor and wall. the smudges were however too big so it might need to be re-done. this is a technique that is also used to make metallic surfaces better, but in my case I edited the textures instead of adding it as a second pass for performance reasons. used as a second pass or custom shader it would look so much better.
while I was at it I made glass textures by using a fingerprints material and turning it slightly less transparent. it still needs some work:
- Edited
devlog: I started by wasting time (as always) making a glass shader. then I decided to look around the internet and found a PBR glass shader in godot shaders, and then I made another glass shader to deform the image, which would be more suited for curved surfaces, leaving the pbr one for flat glass like windows:
I finally made that bigger light, but I'm probably going to have to make another one, as it didn't fit within the intersection room, the lighting was just too bright. I took the time to fix the material assignment and retouch the UV
I also fixed the columns in the lobby room
I also made another smaller room, but it's missing some details and touches:
you can get some pretty good "atmosphere" in godot:
and also I tried remaking the computer system, but I'm considering splitting it into two, one were you press E and it opens a door or activates other simple thing, and one actual computer. I ran into some issues with viewports, that I solved by using a sprite3D like it was in 4.1, and then I had another issue, sprite3Ds are not included in the voxelGI, no matter how much I tried I could not get it to work. using a meshInstance3D caused errors with viewports, I don't know if it's a bug. the next solution would be to fake these small screens using images and put the actual computers in better lit rooms and maybe fake lights.
Jesusemora Looks very nice although a bit gray for my taste. Give it some saturated color accents here and there.
xyz I couldn't find all the textures I wanted, I'm working with free stuff, and it's really good, but for things like these I have to model and bake new surfaces or hide them with more detail.
I used a close enough material, it's not the tone I wanted and it looks too green. I will look into 2 other materials when I get to editing the mesh:
I wanted a more desaturated tone or some sci-fi panels, but I'm gonna have to model those. It looks like a surgery room now.
I also fixed the columns, turns out I had the models in the wrong direction.
- Edited
Jesusemora You can do accents by placing some props, wall terminals, maybe even posters/logos. This'd also make the environment more soulful. You could also use decals to project stuff like colored stripes running across the walls, similar to what half life did in the black mesa facility:
In fact the above image is a textbook example of what I had in mind. Everything is in gray hues with saturation accents concentrated in small areas, all achieved via props and wall graphics.
xyz yes, I need to make some props. I just heard that in level design it's more important to make the rooms first and add details last. if you get stuck making details you never finish.
I am making lights and made a screen. things like wires are easy to model and UV but depend on the level layout. other props need to share the same texture for performance so I need to make them at the same time (the ones that are baked).
xyz wall terminals
once I fake these they will contribute to the ambient light and change the scene
xyz maybe even posters/logos
these take some time to make
xyz You could also use decals to project stuff like colored stripes running across the walls, similar to what half life did in the black mesa facility:
yes, I'm planning to
xyz In fact the above image is a textbook example of what I had in mind. Everything is in gray hues with saturation accents concentrated in small areas, all achieved via props and wall graphics.
I'll get there eventually.
devlog (yes, again): I added an old weapon model to replace the cylinder, it's still a placeholder and I have some others to choose from.
I then tested weapon size and clipping. having the weapon too small caused it to be too blurred due to the physical camera, so it has to be to scale.
then I messed with shaders and did research to try to do the call of duty weapon deformation, since I want the weapon to react to lighting and not be in a viewport.
that failed. then I just placed the meshinstance
inside a node3D
and changed scale there, and it sort of worked, but the weapon gets almost orthogonal, so I had to move the camera to the very back of the character.
I might think of a different solution later. wolfenstein had the weapons dodge the environment, but this sound like a lot of work.
another solution is to use shorter weapons, the rifle is pretty long.
it still gets a bit blurred when the focus is far, but it's pretty good.
I'm loving the mood!
devlog: I made an electric lock for the doors, it doesn't do anything yet. I mean you can't interact with it but it does react. I made a texture containing a bunch of "states" for the lock, and a shader for changing UV using an instance uniform
. then set the automatic doors (that open when something gets close like in a supermarket) to change the uniform. now when the door is closed it says closed and when it opens it changes the sign, and when it closes again it changes it back.
The game felt smooth to me, but looking at fps it was running at 20 fps.
the first thing I tried was setting meshes distance visibility
in geometry
. there were no changes.
then I tried occlusion
, I set up occlusion, changed all the meshes, baked occlusion meshes, added dynamic occluders for doors. again, no difference.
the only thing I was noticing was voxelGI
was taking the most resources. then I realized, all the doors were set to dynamic lighting. I changed them to disabled at got 40 fps.
the other problem seems to be "materials", but the new profiler is confusing and I can no longer sort the results. I get a lot of "material render" fields with no other information and 4000 errors in console when using it.
I'm guessing having meshes with multiple materials could be the problem. then reading the godot blog I'm surprised to learn that all those new optimizations that were promised for 4.3 are actually not here, and instead moved to 4.4. that is disappointing, I have to wait longer.
Well, back to modelling.
devlog: I ended up using the weapon shader from StayAtHomeDev, it was just what I needed. after some changes I got it to work with my setup. the rifle is still shrunk, but I was able to move the camera closer to the center.
I fixed the double doors, and started working on making the areas of the level more unique, after I got lost in my own level 3 times. I made an "emergency" light and started adding some decals in certain areas:
other than that, I have been fixing holes in the level, re-designing it, and coding. I added crouching to the game and made code for an elevator. I need to model some more but I'm getting tired of doing hard surface, so I might go and make some aliens next.
- Edited
Jesusemora Looking forward to seeing some aliens
- Edited
xyz I'm almost finished with the first basemesh, though it will need some more details before jumping to sculpting:
my drawing had more spikes, I might have to add them as extra geometry with alpha scissor.
edit: WIP sculpting:
edit: went back to godot and improved the curved glass shader. I might post it later.
another WIP:
It's almost finished, then retopo, bake, rig and export. and I can make the animations later. I can't wait to see what this thing looks like with SSS.
- Edited
Jesusemora You could maybe make it look more dangerous. but I guess it's only level 1
are these going to be the resident life forms? or are these simply space chickens? I always appreciated Ocarina of Time and the element the chickens had in gameplay. Also.... Are you creating glass eggs for the chickens????? Project looks/feels very professional, keep it up!!!!
- Edited
xyz and here I was about to spoiler the image thinking it was too ugly
REVBENT are these going to be the resident life forms? or are these simply space chickens?
I thought about both, food-stock like the space chickens from space colony, or just aliens, and now that you mention it, both.
the space chickens were found on this planet and secretly raised to produce "synth-meat", which everyone though was people, but it was actually horrific alien ticks.
REVBENT I always appreciated Ocarina of Time and the element the chickens had in gameplay.
these will probably be just hostile at all times.
REVBENT Are you creating glass eggs for the chickens?????
no, that was just a tangent. I got tired from sculpting and wanted to code something. the glass shader will be used for curved transparent surfaces like windows, containment units and spacesuit helmets.
REVBENT Project looks/feels very professional, keep it up!!!!
thank!
I think sculpting is done, now I need to retopo. I've always just made a 3D model and then made a copy and added some detail. but I'm gonna have to actually retopo this time.
update: I ended up reusing the basemesh with some modifications. I will worry about skinning later.
the model is now uv-unwrapped and normal and ao baked. It's missing some albedo, I'm not sure whether to paint the high poly model or do it on the low poly.
next is skinning and then export and see what it looks like in game. animations can be made later thanks to godot's modular design.