Skip to content

A documentation & partial source code release for highlight my abilities with Unreal Engine

License

Notifications You must be signed in to change notification settings

gabuscuv/VRProjectLiteForRecruiter-HR

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VRProject Partial Release For Recruiter & HR

Introduction

Hi Recruiter/HR. Welcome to this partial code release.

VR Project, from a programming perspective is the most complex project that I made on my own. It's available as Vertical Slice, comments and feedback is appreciated.

Also, you can see the history of the project on this page

So my job in this project is as:

  • Gameplay Programmer
  • Tools Programmer (As Debugging Tools/Convert Files Format/Continuous Integration)
  • UI Programmer
  • Shader/Material Programmer (For basic tasks.)
  • Sound Designer
  • Writer
  • AI Programmer

Other People who worked on the project were:

  • Andres Castellanos Camacho
    • Graduated with a Bachelor's degree in English Philology
      • as Story Script Cleaner/ProofReader for English Language)

Libraries, Tools

VR Project currently use OpenXR and Unreal Engine 4.27 (Started the project with 4.23 and with vendor-based VR Libraries) and is developed with these third-party libraries:

  • Unreal Third-Party Plugins:
    • For Runtime
      • NVidia Deep Learning SuperSampling (DLSS) - UE4 Plugin By Nvidia
        • Used to improve performance for SuperHigh resolution VR Headsets like HP Reverb G2 or Pimax or improve framerate in "weak" Graphics Cards supported
      • AMD FidelityFX™ Super Resolution (FSR) - UE4 Plugin by AMD/GPUOpen - MIT License
        • Same as Above but for AMD GPUs or no-RTX GPUs
      • FMODStudio - UE4Integration by Firelight Technologies Pty Ltd - MIT License.
        • Used for improving Audio Design Workflow thanks to their similar appearance to a Digital Audio Workstation and adding features like Pitch Shifter, Random Tracks or just support for Third-Party Plugins like Steam Audio (phonon) and easy to implement to almost every Game Engine.
        • Using Free Indie License. (Revenue: under $200k, Budget: under $500k)
          • As Today (2023/03/16), I have the right to use FMOD Engine, for limited Commercial use as I can explain here
      • Steam Audio Oculus Oclussion (For FMOD)
        • One of the most powerful advanced HRTF libraries currently for Game Engines, Used for example in Half-Life: Alyx (One of the most blockbuster VR Games at the moment).
        • When It was developed there wasn't a version of Steam Audio for FMOD compatible with Unreal Engine (Since 2023, There is., So maybe come-up in a new version)
      • FMODDialogueIntegration by Gabriel Bustillo del Cuvillo (gabuscuv) - Apache License 2
        • This is an Asset-Type Format Plugin developed by me designed for Dialogue between characters, with Support for Animation Assets and customized Subtitles Formats for distinguishing every character. (Useful for accessibility)
      • VRExpansionPlugin by Joshua Statzer (MordenTral) - MIT License
        • When this project started, I should have used this from the beginning. I think it is one of the most important libraries on this list since it allows me to implement interactive doors, and VR Physics efficiently. Sounds like a joke but ... plus to my misfortune the doors that I'm using have IK Bones, So It required an extra tinkering for the physics.
    • Editor/Debug Builds:
  • C++ Libs:
    • magic_enum By Daniil Goncharov (Neargye) - MIT License
      • It's a wonderful lib for C++17 when it's used with ImGui allows me to test events in real time without running manually (For Example an In-Game Action). So yeah, It was useful.
    • FMOD Studio by Firelight Technologies Pty Ltd - FMOD EULA
      • See above "FMODStudio - UE4Integration"
  • Tools
    • Arrow (Game Narrative Design Tool) by M.H.Golkar (mhgolkar)
      • It was quite useful for organizing my ideas about scenes and saves/export to json which is useful for export dialogues to csv with in-house tools for import in UE4 in a way easy. (and the Note Nodes are useful for metadata)

Unreal C++ & Regular C++

This Project has less C++ than my previous project because of a lack of time.

I gained some knowledge doing this project my way. However, the current C++ code is more about Debugging/Interfaces/Enum than actual Gameplay code and probably has more Regular C++ than Unreal C++ (somehow?). And a lot of code is already optimized thanks to plugins like "VRExpansionPlugin",
So...
A lot of code I wrote at the beginning of this project is somehow deprecated (and removed from this repo).
So This project is more Blueprint code than C++ code (But I don't have any issue porting code from BP to C++, If It's required.)

If You desired to read a code with more C++ gameplay oriented code, I would recommend looking at my improved version of Ben Tristem's Exercise
It has some odds decisions like don't use code interfaces for stuff like ammo or health, but It was already based on existent code, So yeah, nowadays, It's not my proudest work.

(VR/Engine/AI/UI) Programmer

Almost every gif has a long version on youtube (click them!)

This video does not represent the current status of the project. A Quite old video about ASync Level Loading

Tools Programmer

Sound Designer

Dynamic Music with SFX Sounds - Alpha

Shaders/Materials

  • Holograph Shader
    • In Editor (with debugtime)
      • Holograph Shader InEditor
    • In Game
      • Holograph Shader InGame
  • Highlight VR Buttons from VR Controllers
    • In Game
      • Highlight VR Buttons InGame
  • Time Paradox Shader
    • In Editor
      • Time Paradox Shader InEditor
    • In Game (unlit lights)
      • Time Paradox Shader InGame

Assets Modified

ThirdParty Assets Used

Legal Notice

  • Unreal and its logo are Epic’s trademarks or registered trademarks of Epic Games, Inc in the US and elsewhere.
  • FMOD and its logo are trademarks or registered trademarks of Firelight Technologies, Inc in the US and elsewhere.
  • NVIDIA and the NVIDIA logo are trademarks and/or registered trademarks of NVIDIA Corporation in the U.S. and/or other countries.
  • Advanced Micro Devices, AMD and AMD Arrow logo and AMD FidelityFX are trademarks and/or registered trademarks of Advanced Micro Devices
  • Oculus and its logo are trademarks or registered trademarks of FACEBOOK TECHNOLOGIES, LLC, Inc in the US and elsewhere

Documentation License

VRProject Partial Release For Recruiter & HR Documentation © 2021 by Gabriel Bustillo del Cuvillo (gabuscuv) is licensed under CC BY-NC-ND 4.0

About

A documentation & partial source code release for highlight my abilities with Unreal Engine

Topics

Resources

License

Stars

Watchers

Forks