top of page

Projects at Blizzard

* Click on the images for more information about the projects

* Work-in-progress - will be updating with more information and images about the Blizzard projects

resultsOnly.png

2024-2025

Animation and Mocap Transfer Tool

Took ownership of our tools for post-processing mocap data and for transferring animations between rigs.

Python, Maya, Qt

simpleImage.png

2023-2024

Weight Transfer Tool

Created a tool for Maya to be able to transfer deformer weights between different meshes

C++, Python, Embree, Qt, Maya

blizzard_logo.png

2021

Ptex Tools

I have been maintaining and improving tools we have so that we can convert our UV data to Ptex and vice-versa. In addition to some tools to be able to paint our Ptex textures and visualize them.

Ptex, C++, OPenSubDiv, OpenGL

blizzard_logo.png

August 2020 - Present

Other Projects at Blizzard

At Blizzard Entertainment I have worked on a variety of tools for the modeling, rigging, and animation departments of the cinematics team.

Simplex, Alembic

BaseExample.png

2025

Multi-Mesh Live Intersections Tool

Created a tool for the modeling team so that they could visualize the intersections between meshes and within the same mesh.

C++, Python, Embree, Maya

blizzard_logo.png

2022

Rigging Tools

Added some components and templates to our proprietary rigging tool in Maya.

Python, Maya

blizzard_logo.png

2020-2021

Check for Intersections

Created a more efficient way to check for intersections within meshes in Maya. This included intersections between different meshes, intersections within the same mesh's faces, and intersections in the UVs.

C++, Embree, TBB, OpenGL, Maya

blizzard_logo.png

2022, 2025

Gnomon Courses

Took a couple of Gnomon courses during my time at Blizzard to further develop my skills and understand the artist perspective. The courses were one in Houdini and one in Unreal.

Houdini, Unreal

blizzard_logo.png

2025

Paint Mesh Generation Tool

Created a tool that automatically subdivides, displaces, and poly-reduces meshes so that we can generate paint meshes for surfacing more efficiently.

C++, Python, Alembic, OpenSubDiv

Screenshot 2026-05-03 203711.png

Hackathon 2024

C++ in Unreal

Investigated the possibilities of C++ in Unreal for the hackathon. I created a simple interpolation node in C++ for Unreal to demonstrate what kind of things can be done.

C++, Unreal

screenshot.png

Hackathon 2021

Pose-Weight Interpolation

Collaborated with a colleague to implement and visualize a pose-weight interpolation solution from a SIGGRAPH talk.

C++, Maya

College Projects

* Click on the images for more information about the projects

env2.png

Spring 2020

Procedural Environment

A lighthouse at night, created in ShaderToy using noise functions (such as Fractal Brownian motion and Worley noise) and signed distance functions. The waves and the light coming from the lighthouse are animated. Ray marching is used in the shader to render the image.

OpenGL Shading Language (GLSL)

clothImage.png

Fall 2019

Cloth Simulation

Simulation of cloth through the use of mass-spring systems, trying both implicit and explicit integrations. I additionally added an obj parser to be able to run the simulation on different meshes.

C++, Houdini

forest.png

Fall 2018

Mini Minecraft

Group project to develop a simple version of Minecraft. My responsibilities included: procedurally generating different types of terrain, ray casting for removing and adding blocks, multithreading functionality, and player physics for swimming. 

C++, OpenGL

shader_def.gif

Fall 2018

Surface Shaders

Created different shaders to modify the look of the 3D Mario character  based on the normals, random functions, and modifying the vertex positions.

OpenGL, GLSL

UMIACS_06262018_9430.JPG

Fall 2017 - Summer 2018

Virtual Reality

Worked as a research assistant while at the University of Maryland Institute of Advanced Computer Graphics. My projects included creating a video editor for 360 video, a VR experience to test implicit bias of police officers, and an immersive opera experience.

Insta360 Pro, Unity, FFmpeg, C++, Maya

Mountains1.png

Spring 2020

Noisy Terrain

Created a shader that produces a procedurally generated terrain. Through the use of noise functions such as Fractal Brownian motion and Perlin Noise, I generated a desert mountainous look, including the different colors and smooth transitions. 

OpenGL, GLSL

Screen Shot 2019-10-11 at 6.42.01 PM.png

Spring 2019

Poly-X: A Maya Plug-in for Shape Placement

Collaborated with one partner to create an authoring tool in Maya that learns and propagates shape placements in 2D polygonal scenes from a few examples provided by the user.

C++, Python, MEL, Maya

miniMaya.png

Fall 2018

Mini Maya

Created a program with some of the basic functionalities of Autodesk Maya, including importing from obj, extruding, Catmull-Clark subdividing, triangulating faces, splitting edges, and adding a basic skeleton.

C++, OpenGL

rasterization.png

Fall 2018

3D Triangle Rasterization

Created a 3D triangle rasterization program that includes perspective-correct interpolation, texture mapping, and Lambertian reflection.

C++, OpenGL

Screen Shot 2018-10-15 at 11.55.54 AM.pn

Spring 2018

The Hike - Short Film

I wrote, directed, shot, and edited the short film The Hike. Other experimental videos and more editing work can be found on Vimeo.

Filmmaking

bunny.png

Fall 2019

MPM Jello Simulation

Implemented Material Point Method to generated a gelatin-like simulation. Included a tetrahedral mesh parser in order to use it in complex meshes such as the Stanford bunny.

C++, Houdini

PathTracer.png

Spring 2019

Rendering

Implementation of a path tracer with different surface types and a lens based camera. In addition to the creation of a photon mapper and a ray tracer.

C++

worley noise.png

Fall 2018

Post-Processing Shaders

Created different post-processing effects using Worley noise, Fractional Brownian motion, a sober filter, etc. to create different results.

OpenGL, GLSL

render_test1.jpeg

Fall 2018

3D Modeling

Experimented with creating different objects, environments, and characters in Maya such as the train station above based on the movie Hugo.

Maya

beach.jpg

Spring 2018

Photography

Practiced photography by taking multiple pictures during different trips using a Nikon D3300 DSLR camera. 

DSLR Camera, Adobe Photoshop Lightroom

© Iciar Andreu Angulo 2020

  • Vimeo
bottom of page