AAU Student Projects - visit Aalborg University's student projects portal
A master's thesis from Aalborg University
Book cover


Procedural Character Generation: Implementing Reference Fitting and Principal Components Analysis

Authors

;

Term

4. term

Publication year

2007

Abstract

Afhandlingen undersøger proceduralt genereret indhold—automatisk skabelse af 3D-aktiver—med fokus på humanoide figurer. Vi analyserer metoder til at generere sådanne modeller og finder, at hovedkomponentanalyse (PCA), en statistisk teknik der opsummerer fælles mønstre og variation fra eksempelfigurer, egner sig godt til at fremstille overfladenettet—figurens ydre 3D-form. Der genereres ikke teksturer. På baggrund af analysen designer vi en applikation, der kan bruges af 3D‑kunstnere sammen med deres modelleringsprogram. Værktøjet kombinerer PCA med tilpasning til referencer (reference fitting) og genetiske algoritmer (en evolutionært inspireret søgemetode) for at gøre modelgenerering lettere. Ud fra vores implementering konkluderer vi, at PCA kan bruges til at generere humanoide modeller, men der er tydeligt plads til forbedring. Vores få tests viser ikke, hvor stor variation processen kan opnå, og forsøget på at gøre genereringen intuitiv lykkedes ikke med det begrænsede testdatasæt.

This thesis looks at procedural content generation—automatically creating 3D assets—focused on humanoid characters. We analyze methods for generating such models and find that principal component analysis (PCA), a statistical technique that captures common patterns and variation from example shapes, is well suited for producing the surface mesh—the outer 3D shape of the character. Texture data is not generated. Based on this analysis, we designed an application to support graphics artists alongside their modeling software. The tool combines PCA with reference fitting (adapting a model to reference examples) and genetic algorithms (an evolution-inspired search method) to make model creation easier. From our implementation we conclude that PCA can generate humanoid models, but there is clear room for improvement. Our small set of tests does not show how much variation the process can achieve, and our attempt to make the generation intuitive was not successful given the limited test data.

[This abstract was generated with the help of AI]