Hi, I'm Lindsay! I am currently a senior at the University of Pennsylvania pursuing a Bachelor's degree in Computer Engineering (May 2022) and a Master's degree in Computer Graphics (May 2023). At Penn, I am a developer for Penn Creative Labs, a member of Hexagon Engineering Senior Society, and the current director of Strictly Funk Dance Company. I am passionate about computer graphics, animation, and all types of art and design.
I have experience working as a software engineering intern, a social media marketing intern, and a teaching assistant for an electrical engineering course at Penn. In addition, I developed my own eCommerce shop and have served as the Creative Director for my dance company. I love exploring the space where technology intersects art, and I hope to pursue a career that allows me to fulfill my love for both.
In my free time, I enjoy cooking, painting, and dancing. I am currently working on recreating this website from scratch, along with side projects in Cinema 4D and Maya.
CUDA Path Tracer and Denoiser (C++, CUDA)
Implemented a basic path tracing algorithm in which rays are bounced between objects for multiple iterations to average each pixel's color in the scene. Additionally created various materials for objects such as reflective, refractive, and diffused surfaces. Also implemented anti-aliasing, depth of field, and direct lighting to create cleaner and more realistic images.
The denoiser was an additional project component based on the edge-avoiding algorithm described in this paper. It utilizes a pseudo-Gaussian blur algorithm to smooth over noise, and then uses edge detection to preserve the integrity of the objects in the scene. Edges are detected based on pixel normals and position. The image seen here is the result of the path tracer and denoiser together.
Wildfire Simulator and Renderer (C++, CUDA, OpenGL)
Worked in a team of three to create a physically based GPU approach for simulating the spread of wildfires. Created OpenGL shader pipelines for the terrain and trees, and helped convert input data points to tree geometry. Collaborated with other teammates to discuss structure of project and debug any problem areas.
This project is based off this paper, and our GitHub can be found here.
Mini Minecraft (C++, OpenGL)
Worked as one of three group members to develop a Minecraft- inspired first person game. Created the procedurally generated terrain using fractal Brownian motion and Perlin noise. Utilized 2D L-Systems to produce a branching river and implemented a procedural sky that contains a sun and colors that shift through day and night over time.
Mini Maya Mesh Editor (C++, GLSL, QT)
Developed a Maya-inspired mesh editor with GUI for loading, subdividing, and manipulating objects. Implements Catmull-Clark subdivision, skeleton skinning, and face triangulation. User can use the GUI to do all of these things, in addition to moving faces, vertices, and edges, and altering the weight of each RGB color on a face.
Submarine (Cinema 4D)
First experience using C4D; learning how to model, animate, and light a scene.
Donut Box (Blender)
A small step up from the classic . My first 3D model/render done in August 2021.
Where Are We? (2018)
A series done for high school senior portfolio with some later additions. Pen on paper.
Feels like questioning reality and finding what's outside.
In My Head (2020)
Acrylic painting on canvas. Not quite a series, but almost.
Feels like seeing every color in the world at once.
Nostalgia (2020)
A mini zine created with scraps of old drawings, magazine cuttings, and memories.
Feels like growing up too fast. or maybe just growing up.
Self (2021)
Quick self portrait studies done digitally with Procreate. Rough sketches for learning to understand face shape.
Feels like finding out what one looks like.
Email:
lsmith24@seas.upenn.edu
lindsaysmith8603@gmail.com
LinkedIn:
https://www.linkedin.com/in/lindsay-j-smith/