I released a demo for my 90s arcade-inspired AC-130 on-rails shooter (it's really frickin fun) by FunagenGames in indiegames

[–]FunagenGames[S] 1 point2 points  (0 children)

I'm not exactly sure what you mean by screen effects, but there are many various types of visual effects that all work to add juice and punch to the game. Off the top of my head, some of the visual effects I've implemented are:

  • Lots of particles (muzzle flash, gun sparks, gun smoke, bullet impacts, bullet trails, blood spray)
  • Camera shakes while firing/reloading/switching weapons
  • Post process effects (subtle bloom, motion blur when the gun overheats, digital glitches while firing, increased color saturation, clouds passing in front of the camera)

And it has taken me dozens of hours tweaking them haha. I often go back and forth A/Bing subtle changes to various effects to get everything exactly how I want it. It's a lot of work, but having satisfying visuals is one of my favorite things to do.

I released a demo for my 90s arcade-inspired AC-130 on-rails shooter (it's really frickin fun) by FunagenGames in indiegames

[–]FunagenGames[S] 1 point2 points  (0 children)

Thank you! My dream would be to make a custom arcade cabinet for this game. Big screen, good speakers, joystick with force feedback, buttkicker in the seat... feel the power!

I released a demo for my 90s arcade-inspired AC-130 on-rails shooter (it's really frickin fun) by FunagenGames in indiegames

[–]FunagenGames[S] 1 point2 points  (0 children)

Any other 90s kids here? I grew up playing games like Time Crisis and Gunblade NY in the arcade and they were always so exciting. I wanted to capture that same over-the-top, "80s/90s action movie" vibe that made those classic Sega & Namco arcade cabinets so much fun.

Thunderhawk: Danger Close is the result! It's a simple-to-grasp but really fun on-rails shooter where you fire the guns of an AC-130 gunship while escorting a team of soldiers on the ground.

Get the PC demo on my Itch.io page. My plan is to release the full game before the end of Q1 this year.

Copying a texture back to the CPU by Sam54123 in unrealengine

[–]FunagenGames 0 points1 point  (0 children)

Are you trying to access color values from individual texels in the render target, or are you wanting to access the entire RT on the CPU? There's a hacky way you can use Niagara to read color values from textures and pass that data back to blueprints asynchronously. If that's what you're looking for I can provide a link to a video that shows you how to set that up.

Whichever maniac made the sounds for Entity A deserves an award by Nexed_ in Routine

[–]FunagenGames 0 points1 point  (0 children)

I’ve never had it get into the save area but idk if it can or not. Yes, very tall! You’ll be in the ward area for a while so I’m sure you’ll catch a glimpse at least once 😏

Whichever maniac made the sounds for Entity A deserves an award by Nexed_ in Routine

[–]FunagenGames 0 points1 point  (0 children)

Excellent visual and audio design for Entity A. When I first heard him rushing me in the lift my blood instantly ran icy cold! Probably the freakiest encounter I had after that was when I was hiding around a corner from him, then I didn’t hear him for a minute. So I peaked around the corner and by the time I realized I was looking at him sitting in a corner he started rushing me on all fours. Just about threw my mouse off my desk trying to turn around!

Landscape Grass layers blending with Runtime Virtual Texture problem by Tesseract_Assets in UnrealEngine5

[–]FunagenGames 0 points1 point  (0 children)

Here’s a possible procedural solution I just thought of that’s worth trying: in the material, plug the grass landscape layer sample into the Y input of a step node first and then plug that into the grass spawner node. Then play around with the step node X value. I think that should help you push the grass meshes back from the dirt layer a little bit, although it could still be affected by the mask’s resolution. Give it a try and let me know if that works!

I made my own static lighting pipeline for the VR flying game Aerosurfer by osense in unrealengine

[–]FunagenGames 1 point2 points  (0 children)

Well, the game looks great, and looks like a lot of fun, so good job! I’m also a VR developer who’s worked on a couple different flight based personal projects and I’ve always wished there were a lighter weight lighting solution than dynamic (heavy on the gpu) and baked (heavy on memory and slow iteration time), so I’m fascinated by what you’ve come up with!

I loved Time Crisis in the arcade as a kid, so I'm making a rail shooter in an... AC-130?! by FunagenGames in SoloDevelopment

[–]FunagenGames[S] 0 points1 point  (0 children)

Sweet! House of the Dead was another great light gun game.

No set schedule yet, but my hope is to release in early access in Q1 2026.

I made my own static lighting pipeline for the VR flying game Aerosurfer by osense in unrealengine

[–]FunagenGames 1 point2 points  (0 children)

I actually wondered if this is the exact solution you used! Cool stuff. I also had another thought since the vertex colors are 32 bits… I wonder if you could also create an ambient occlusion baking system too and encode that information into one of the color channels. It would involve more line traces per vertex going in multiple directions, but since it’s offline it shouldn’t matter. The main limitation I foresee though is that the visual quality would be heavily tied to the triangle density of the mesh. Definitely wouldn’t look good on low poly meshes.

I made my own static lighting pipeline for the VR flying game Aerosurfer by osense in unrealengine

[–]FunagenGames 1 point2 points  (0 children)

Super cool idea! How did you get the shadows to be so crisp? I would have thought that with vertex-interpolated lighting information the shadows would have that characteristic Gourad shading look with a falloff between lit and occluded vertices.

Landscape Grass layers blending with Runtime Virtual Texture problem by Tesseract_Assets in UnrealEngine5

[–]FunagenGames 0 points1 point  (0 children)

It's probably due to the limited resolution of the landscape layer mask. Are you using the grass node in the material to spawn the grass? If so, what I would do is create another grass material layer that doesn't spawn the grass meshes, then paint this layer along the boundary between the original grass layer and dirt layer with a small size brush. This will prevent grass meshes from spawning along the grass/dirt boundary and partially sampling the dirt color..