vector P = point(0, "P");
v@N = normalize(v@P - point(0, "centroid", 0));
f@density = chramp("distribution", rand(@ptnum));
v@Cd = sample_direction_uniform(rand(@ptnum * 7.3));
matrix3 xform = maketransform(@N, v@up);
@P += noise(@P * f@scale) * f@amplitude;
i[]@neighbors = neighbours(0, @ptnum);
float dist = distance(@P, vector(chv("target")));
@pscale *= fit01(rand(@id), ch("minscale"), ch("maxscale"));
setpointattrib(0, "Cd", @ptnum, @Cd, "set");

Experience

Tech Artist Tools Developer | Contract
Series AI Ent. | RemoteFeb 2025 — Present
  • Built Unity (C# Editor) tools for environment/level teams.
  • Created automation utilities to accelerate iteration and reduce manual steps.
  • Improved handoff between DCC ↔ engine via clean export templates & validators.
Principal Technical Artist | Contract
MythicaNov 2023 — Sep 2024
  • Helped develop an AI + procedural tool for Unreal.
  • Main focus: Generation and procedural methods for terrain and foliage propagation.
Tech Artist | Contract
Skrice StudiosJun 2023 — Jan 2024
  • Delivered Assets and Houdini tools for layout, instancing, and LOD/lightmap prep.
  • Set up naming, packaging, and export validators to streamline handoff.
  • Supported shaders/material variants for art‑direction changes.
Senior Environment Texture Artist | Full-time
Ready at Dawn · Irvine, CAJun 2013 — Aug 2015
  • Hand‑sculpted high‑poly assets in ZBrush; retopo, UVs, and bake pipelines.
  • PBR authoring; material libraries and trim/atlas sets.
  • Close collaboration with lighting/shader teams to hit visuals and performance.
  • Consistency: texel density checks, naming/versioning, export hygiene.

Last 4 Positions

Additional professional experience and roles on LinkedIn

Own Work

Unity / Godot | Game Demos
Prototypes
  • Small gameplay + shader studies; input, camera, physics, and UI patterns.
  • Tooling-first: level kitbashers, scatter/spline helpers, Houdini, profiling passes.
  • Clips on YouTube; code structured for reuse.
Plexus | GPU Node Graph (Unity)
Compute Shaders
  • PLEXUS: GPU‑BASED NODE SYSTEM for Unity
  • PROCEDURAL GENERATION — point based transformations, geometry operations
  • VISUAL GRAPH EDITOR — real‑time execution and preview types
  • SURFACE SCATTERING — distribute objects on meshes of many types
  • COMPUTE SHADER DRIVEN — GPU processing with compute shaders
  • Similar to HOUDINI but in Unity, with more focus on performance and visual programming