User Tools

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
angelportfolio [2025/01/09 17:05] angelangelportfolio [2025/06/23 08:46] (current) angel
Line 1: Line 1:
-This page is dedicated to documenting Angel's projects and experiments+This page is dedicated to creating a portfolio for Angel and gives context to some of the projects they have done.  
 + 
 +If you are looking for a more formal resume, it is available [[https://pigpigcreative.com/page.html|here]]
  
 ====== Biography & Experience ====== ====== Biography & Experience ======
Line 14: Line 16:
 During the same period, they were a co-founder of the Shrader Club, a club focused around technological career development, group projects, and research. They helped create and run the club, as well as led most of the events such as public game tournaments, free training, and homework help sessions.  During the same period, they were a co-founder of the Shrader Club, a club focused around technological career development, group projects, and research. They helped create and run the club, as well as led most of the events such as public game tournaments, free training, and homework help sessions. 
  
 +During a period of hellish job-hunting, Angel began a content creation journey with a specialty in playing and making games. They began work on Cyber Runner(working name) and documented much of their experience on Twitch and Youtube. After several months of this, they landed a job as a TDR and Deployment technician at Medasource doing deployment, configuration, and maintenance on printers and workstations for an Epic integration project across Mass General Brigham. They continued their work here until May, when a compensation disagreement caused them to part ways and continue their journey on Twitch.
 ====== Projects ====== ====== Projects ======
 *Note from Angel : Unfortunately, many of my projects were lost after a harddrive died, so this is a very incomplete list. I will be continuing to update this page as I find more screenshots and files from any missing projects. *Note from Angel : Unfortunately, many of my projects were lost after a harddrive died, so this is a very incomplete list. I will be continuing to update this page as I find more screenshots and files from any missing projects.
-===== Enigmatic Inheritance =====  
  
-This was a research project sponsored by Meta and Unity in the summer of 2023It was an 8 week(10 hour per) project in which a team of 5 studentsincluding myself, were provided a Quest 2 headset and access to Unity pro. During this time, we were expected to develop a concept, create a timeline, and execute the tasks on this timeline to create a functioning prototype. We were also expected give a public presentation showing our process and the final product, which was intended to be continued by a second group of students in later years.  +===== Enigmatic Inheritance ===== 
-++++ details |  +This was a VR game that I made as part of a research project sponsored by Unity and Meta. I led a team of 5 to learn VR, Unity, and Games in 8 weeks to investigate the toughest parts of learning game development and AR/VR design.
-==== Week 1 ==== +
-During this week, we crafted the idea of a classic puzzle/escape game. It would have several levels, each of which would have a unique puzzle required to move on to the next. We began drafting stories and creating a timeline that we would follow for the remainder of the project.+
  
-It was at this time, that I was informed that I was the only member of the group that had used Unity, was one of two that had ever programmed before, and the only one that had used version control. It was at this time that our professor, who was acting as a consultant/manager in this faux-company, suggested that I start to take the lead in the project and teach the other students the various skills and programs that would be needed for the project. The rest of this week was used to do just that and by the end, almost everyone had all the software needed and I had begun teaching C# and 3D modelling to the team. During the project we used Unity, Visual Studio 2019/22, Blender, Audacity, FL Studio, Trello, and Github. +You can find the full project [[projects:enigmatic_inheritance|here]].
- +
-==== Week 2 ==== +
-This week was mainly used to learn about licenses, project management, and developing skills. I also learned and ran planning poker, burndowns, and ran daily standups, all of which we would continue to use throughout the project. Unfortunately, much of our working time from this week was lost due to some confusion about stipends and compensation which took some time to correct.  +
- +
-This lull gave us some time to refine and flesh out our ideas for the design, flow, and story of the game. At this point, we knew we wanted the game to be set in a hidden mesoamerican temple, which would be introduced to the player in a short cutscene at the beginning. The player character's grandfather would leave a key to said temple in his will, as well as a letter explaining it's backstory. The first level would be a walk through a stormy forest to find the temple, as well as a short tutorial explaining the basics of gameplay(movement, item manipulation, etc). This first level would require the player to carry the key and a flashlight to the temple, find the door, and open it. +
- +
-==== Week 3 ==== +
-By week 3, the team had settled in and begun to understand our niche roles. I had become more of a manager than developer, helping people with any issues and giving direction, as well as delegating tasks. We had one person who handled music and sound effects, another who created and sourced 3D models(meaning much research into licenses), one who handled overall level design and story direction, and the last who worked on programming everything. Obviously, with such a small team, there was a great deal of overlap between the roles, but these roles seemed to fit everyone's individual interests and skillsets. +
- +
-==== Week 4/5 ==== +
-Weeks 4 and 5 blur together- as does much of the time after this point- but I'll try my best to recount and accurate order of events. During these weeks, I increased my work hours to between 30 and 40 hours a week, as it would stay for the rest of the project. I would stay for up to 4 hours after the others left to correct errors and troubleshoot engine errors and Github conflicts. This tended to be what I spent most of my time doing while the others were actually creating things.  +
- +
-During this period, we mostly finalized the intro level and designs for the other levels. We ended up having roughly 1 level per person, with each team member providing a design for the team to critique then create. I worked together with our sound/music engineer to create the second level which consisted of a few riddles containing clues for placing books onto a shelf. The main programmer designed a level in a sewer where the player had to chase away bats as they raced through a dark tunnel. I designed a level in the bottom of a well, where players have to knock a key out of a bat's grasp as it tries to avoid them. Later two more designs were put forward but we will cover those later. +
- +
-While we had a number of level designs, we were still working on the macro-elements of the game, namely the character controller. From the beginning we wanted a utility belt in which items could be stored between levels. This, along with a general struggle with VR/AR development, proved to be an ongoing problem until the day before the presentation. These game-wide systems were what the main programmer and myself worked on for the majority of weeks 3 through 6.  +
- +
-==== Week 5 ==== +
- +
-We finally made it halfway through the project, but it was far from finished. About this time, our artist and modeller stopped showing up. Apparently, he had some issue with housing and gotten a new job but none of this was relayed to us until the end of week 6. Because of this, we had to work under the assumption that he would be returning and would be willing and able to make up the work and hours that he had missed.  +
- +
-Aside from this setback, the second level had been completed and our musician turned level designer had a new idea. He proposed a foggy maze level. We worked together on it for a little while and we ended up with a complex, shifting maze with multiple levers that would move walls. He said he wanted to try creating and coding this entire level by himself, so I proposed a swap. For this level, I would write the music and do sound design while he did the more mechanical parts. I spent around two hours in LMMS(an open-source DAW that I ended up making a second track in for this project) and brought forward an eerie track that he thought fit perfectly with his level idea. +
- +
-After my brief, two day tangent, I went back to finish working on the player controllers, level swapping, and a dynamic fire system for lighting certain items on fire. +
- +
-==== Week 6 ==== +
- +
-We finally had the ability to change between levels and a mostly finalized player controller. Additionally, we were running out of 3D assets, so I bought us a license to use Kenney's Game Assets and made a dozen more assets from scratch. Unfortunately, this is what most of my time was spent on this week, aside from the end-of-day tradition of resolving Github conflicts. I also did the modelling for my well level during this week.  +
- +
-This week, our level design/writer put forward her design idea for the final room which would hold the credits and one final puzzle. This room would require a lot of 3D assets, which is why she was hesitant to suggest it, but we assured her that we would make it work. She started doing research on Blender and shaders that would allow her to pick up the slack of our missing team member and complete the room on her own. Additionally, at this end of the week our programmer had finally figured out how to create a utility belt that would allow travel between levels. With this final, major piece complete we could finally begin working on the final presentation. +
- +
-==== Week 7 ==== +
- +
-In the middle of Week 7, we had a surprise visitor from our missing member. He gave us some updates on what was going on and revealed he had still been sneaking in after hours to work on 3D assets and a level design without our knowledge. Unfortunately, we were just squeaking by with the existing levels so we eventually had to cut his level from the game despite the work he put in. +
- +
-Thankfully, his secret work allowed us to quickly put together the last rooms with some extra hours from all of us and begin putting test builds together before the presentation. +
- +
-==== Week 8 ==== +
- +
-After a grueling 8 hour day of resolving version conflicts and rebuilding assets, entire scenes, and more, the game was ready for some external testing and bug fixes. We recruited some engineers from another research project on campus to test our game and give feedback. After a lot of crunch hours, the game was a fully playable prototype and our presentation was ready to go. +
- +
-==== Presentation ==== +
- +
-I'm searching for a copy and/or recording of the presentation so for now you'll just have to believe me that it went well.+++++
  
 ===== Voxel Testing ===== ===== Voxel Testing =====
-This project was focused on 2D noise and terrain generation in the Unity engine. It was started December of 2021 and was meant to be the beginnings of a much larger project(Startrotter) that was later abandoned. During this project we used basic Perlin noise to create simple terrain. Unfortunately, the project files were lost but many images were saved. The following is a timeline of the development of this project. +This project was focused on 2D noise and terrain generation in the Unity engine. It was started December of 2021 and was meant to be the beginnings of a much larger project(Startrotter) that was later abandoned. During this project we used basic Perlin noise to create simple terrain. Unfortunately, the project files were lost but many images were saved. For full project timeline, [[projects:voxel_testing|click here]]
- +
-++++ details |  +
-This was the first successful generation of noisewhich was mapped to a texture file as the voxel system hadn't been implemented yet. +
- +
-{{ public:messy-noise-no-blocks.png?nolink&400 |First noise texture}} +
- +
-After some tweaking, that code created this terrain texture. +
- +
-{{ public:first-gen-old-system.png?nolink&400 |First terrain texture}} +
- +
-After about a week of pain and creating systems that would never be used, we finally implemented the voxel "engine" and created this first generation with actual voxels. +
- +
-{{ public:first-successful-generation.png?nolink&400 |First voxel generation}} +
- +
-Then we got these two generations in the voxel engine. At this point, we added rigidbodies to each voxel to allow for a player character. +
- +
-<WRAP centeralign>{{ public:first-actual-terrain.png?nolink&400 |First terrain generation}} +
-{{ public:first-terrain-new-seed.png?nolink&400 |Second terrain generation(new seed)}}</WRAP> +
- +
-These two images show some tweaked values and the delicate balance that is required in this method of generation. +
- +
-<WRAP centeralign>{{public:noise-fail.png?nolink&400|Weird noise}} +
-{{public:more-noise.png?nolink&400|Weirder noise}}</WRAP> +
- +
-We began experimenting with material layers but it's a little hard to see. There are layers of dirt, gravel, and stone within the generation. Also, we added robot character that can run around and modify the terrain. +
- +
-<WRAP centeralign>{{public:material-layers.png?nolink&400|Adding multiple material types}} +
-{{public:adding-character.png?nolink&400|Robot character walking around}}</WRAP> +
- +
-At this point, I was getting busy with. school so I could only finalize the cave generation. These images show the process of finding the proper size and texture of caves. +
- +
-<WRAP centeralign> {{public:even-more-caves.png?nolink&300|Tweaking Caves}}{{public:more-caves-with-grass.png?nolink&300|More cave tweaking}}{{public:adding-grass.png?nolink&300|Actually added grass texture}}{{public:weird-blobby-caves.png?nolink&300|Blobby caves}}{{public:making-caves-final.png?nolink&300|One of the last}}{{public:failed-caves.png?nolink&300|Failed cave generation}} </WRAP> +
- +
-At last, we get to the final test with terrain for over a year and the last image I could find of our 2D voxel engine. We leaned toward a more walkable cave model as well as an multi-octave generation model for the surface noise. We added some alternate materials around the edges of the caves and varied the surface thickness. +
- +
-{{ public:final-noise-image.png?nolink&600 |Final terrain generation}} +
- +
-There are no further updates to this project as the project was postponed indefinitely due to scheduling issues. As stated earlier, there are no viewable files associated with this project. +
-+++++
  
 ===== Cyber Flow ===== ===== Cyber Flow =====
-Update: I am now working on this again. I have recreated everything in Unreal Engine 5 and am working on it with public development logs on my Youtube channel. For more info, see Working Name: Cyber Runner +Update: I am now working on this again. I have recreated everything in Unreal Engine 5 and am working on it with public development logs on my Youtube channel. For more info, see [[projects:wncyber-runner|Working Name: Cyber Runner]]
- +
-'Cyber Flow' was a class project which was meant to show a student's ability to create a game from start to finish. It required us to follow the basic design and development phase structure; design document, development timeline, prototyping, and polishing. The game focused on parkour and FPS elements with the working name "parkour shooter." This was humorously changed to "parkour dispatcher" due to the school's "no violence" policies. Below is a timeline of the project: +
- +
-++++ details | +
- +
-The first step was creating a design document for the project. Above is screenshots of the design document I created([[https://www.pigpigcreative.com/w/lib/exe/fetch.php?media=public:parkour_shooter_design_doc-1.docx|file download]]). Unfortunately, the design sketch was submitted physically and lost. +
- +
-<WRAP centeralign>{{:public:page-1-cyberflow.png?nolink&500|Page 1 of design document}} {{:public:page-2-cyberflow.png?nolink&500|Page 2 of design document}}</WRAP> +
- +
-After my design document was approved, I was tasked with creating a Scrum board with Trello, including a burndown chart(not pictured). +
-https://www.pigpigcreative.com/w/lib/images/toolbar/linkextern.png +
-{{ :public:parkour-shooter-trello.png?nolink&500 |Scrum cards on Trello}}+
  
-By the end of the project, I had implemented wall-running, grappling hook/swinging, dash ability, FPS shooting, and prototype AI enemiesI may continue this project in the future to add more levels and refine several mechanics but as it stands nowI am proud of this project as a prototype. UnfortunatelyI can't find any 'in progress' screenshots but I took some new screenshots of the project. The project itself is also available for download [[https://www.pigpigcreative.com/w/lib/exe/fetch.php?media=public:parkourshooter.zip|here]].+'Cyber Flow' was a class project which was meant to show student'ability to create a game from start to finishIt required us to follow the basic design and development phase structure; design documentdevelopment timelineprototyping, and polishing. The game focused on parkour and FPS elements with the working name "parkour shooter." This was humorously changed to "parkour dispatcher" due to the school's "no violence" policies
  
-<WRAP centeralign>{{:public:cyberflow-mainmenu.png?nolink&400|}}{{:public:cyberflow-death.png?nolink&400|}}{{:public:cyberflow-ingame.png?nolink&400|}}{{:public:cyberflow-level.png?nolink&400|}}</WRAP> +For a full project briefing, check it out [[projects:cyber_flow|here]]
-+++++