Marcus Loo Vergara

marcus.loo.vergara@gmail.com in/marcus-loo-vergara www.github.com/bitsauce

Graphics programmer working at Funcom who's got a passion for creating all sorts of visual, interactive and learning systems

About Me

Like many, I developed a fascination for all things computer and technology in my youth. At the age of 13, I had made it my goal to learn as much as possible about the technologies that drive my favorite gadgets and experiences, with the motivation of one day using that knowledge to create captivating and meaningful experiences for myself and the people around me.

My name is Marcus "Bitsauce" Loo Vergara, and I am a software engineer who's main areas of interests include computer graphics, computer vision, and deep learning. I graduated from the Norwegian University of Science and Technology with a M.Sc. degree in computer science June 2019. I love to dive deep into topics in these areas, and always

aim to learn and reproduce the results of my favorite methods. Here are a few examples: implementing a paper on interactive soft shadows with ray-tracing, using reinforcement learning to train a self-driving vehicle, and writing a physically based shading renderer. I also enjoy following developments at conferences such as SIGGRAPH, CVPR, GDC, and I would, of course, love to have opportunities to attend these conferences.

A central part of my personality is my desire to engage with and explore the world, and studying at the University of California, San Diego for a full year a testament to that. Getting into UCSD was a big milestone to me and it opened up many great opportunities in my carrer.

Graphics & Games

Growing up in the era when 3D graphics had just hit the home consoles, I developed an interest in learning how to create these experiences. I sought out information on the internet and scoured the forums, and eventually ended up with a copy of the Torque Game Engine in front of me. I didn't know programming nor 3D modeling, but I had persistence on my side. I learned to program in C++ by meticulously analyzing the source code of the engine, and making connections between what happened in-game with the code on my screen.

Along the way, I became more interested in the technological side of games, in particular, how real-time 3D graphics are realized. Struck with a desire to understand graphics, I sought to create a simple game engine with C++ and OpenGL, where the ultimate goal would be to create a fully-fledged 2D game with this engine.

Overworld

Overworld is the most comprehensive of these projects – an infinite, tile-based sandbox akin to Terraria and Minecraft. The project has been in development since November 2011, however, its development has been put on hold due more of my focus being directed towards the Master's thesis. I have learned a lot about optimization for games, and how to ensure efficient communication between the GPU and CPU through the project. Maintaining a stable frame rate when generation has to happen on the fly is difficult, and lead me to utilize the GPU for general purpose computing to ease the load on the CPU.

Graphics Software Engineering Internship

During the summer of 2018, I got an amazing opportunity to join PlayStation's Global Developer Technology Group as an intern and to work on various projects related to PS4 graphics. One of these projects pertained to the implementation of physically based rendering methods, in particular the "metallic workflow." I learned a lot about topics in advanced 3D graphics, such as low-level graphics programming, HDR and 4K rendering, GPU architectures and performance analysis.

Machine Learning & Master's Thesis

Machine learning has been a hot topic as of late, as we have seen deep learning achieve state-of-the-art results on tasks that were thought to be hard or intractable. I view deep learning through a curious lense and have taken it upon myself to learn how this technology works. I strongly believe that machine learning technologies have a lot of potential in computer vision, natural language processing, and even computer graphics, and I believe we are only going to see more and more methods utilize machine learning in some facet or another in vision and graphics.

Eager to explore a frontier of technology that promises to change society as we know it, I joined the autonomous vehicle lab for my final two semesters at NTNU. In accordance with my supervisor, I determined my role in the team would be to explore reinforcement learning – a sub-field of machine learning that focuses on creating agents that act in a way that maximizes its utility with respect to a predetermined goal. The prospect of creating artificial intelligence that can learn to drive and play games by trial-and-error is fascinating to me, and is also a project that allows me to combine my experience with game engines and computer vision since reinforcement learning for autonomous vehicles typically use driving simulators such as CARLA or AirSim, both of which are simulators that run on Unreal Engine 4.

Personal Projects & Course Projects