20
12/12/2014 1 Procedural modeling 3D Solid Textures

3D Solid Textures - UCRvbz/cs130f14-16.pdf · 12/12/2014 2 3D Solid Textures Combining textures with objects that change shape can be problematic To ‘fix’ texture in space, can

  • Upload
    dothien

  • View
    229

  • Download
    2

Embed Size (px)

Citation preview

12/12/2014

1

Procedural modeling

3D Solid Textures

12/12/2014

2

3D Solid Textures

Combining textures with objects that change

shape can be problematic

To ‘fix’ texture in space, can create a volume

representation of the texture through space

This requires a procedural or function-based

description of the the texture (rather than an image)

Examples: Wood, Marble, Swiss Cheese

12/12/2014

3

Procedural Modeling

Rule-based systems

An algorithm takes the inputs and

produces the complex output (in this

case a set of polygons)

Procedural animation differs only in that

the model changes/evolves over time.

Procedural Modeling

Many types of procedural models:

Modeling with noise

Grammar-based models

Fractal models

12/12/2014

4

Modeling with noise

Solid 3D texture

Modeling with noise

What is noise?

Perlin (1985) says:

A 'random' function that has statistical

properties perceived by the human

visual system to include 'appropriate'

detail at a variety of scales.

12/12/2014

5

Modeling with noise

In 3D modeling, noise should be:

Invariant under rotation and translation

Limited frequency bandwidth (no

features larger or smaller than a

narrow size range)

Modeling with noise

Example: modeling waves

Noise perturbs normals to give the

look of waves:

normal(x,y) = f(noise(x,y), cycloid(x,y))

12/12/2014

6

Modeling with noise

What is a cycloid?

Path of point on a rolling surface

Results in 'rolling' ocean waves

12/12/2014

7

Texture Synthesis

min. error boundary

Image Quilting

vertical boundary

_ =

2

overlap error

12/12/2014

8

Input texture

B1 B2

Random placement

of blocks

block

B1 B2

Neighboring blocks

constrained by overlap

B1 B2

Minimal error

boundary cut

Texture Synthesis on Shapes

12/12/2014

9

Texture Synthesis on Shapes

Grammar Based Models

Modeling and animating structures using rule

based grammars

Most popular for use in plant and eco-system

modeling

L-grammars or L-systems mimic some visual

aspects of plant development

12/12/2014

10

L-Systems

What is an L-system? Set of rules for updating

a given string.

Rule 1: A -> AA

Rule 2: B -> A B AA B

Starting with string B, 2 iterations yield:

A B AA B AA (A B AA B) AA AA (A B AA B)

L-Systems

Interpreted graphically:

B

AB

B

B B

B

A

A A

AA

AA

AA

AA

A AA

12/12/2014

11

L-Systems

A second, symmetric example

Production Rules &

Initial string: A

A -> F[+A][-A]FA

F -> FF

Drawing requires parameters

like: line length, included

angle (+,-), color, etc.

L-Systems

Complex example

Production Rules

Initial string: F

F -> FF-[-F+F+F]

+[+F-F-F]

12/12/2014

12

L-Systems – results

L-Systems – results

Complicated ecosystems can be built from sets

of l-systems and stochastic placement

12/12/2014

13

Architectural Grammars

12/12/2014

14

Architectural Grammars

Architectural Grammars

12/12/2014

15

Architectural Grammars

12/12/2014

16

Architectural Grammars

12/12/2014

17

Fractals – self-repeating mathematical constructs

Chaos theory

Leads to complex

models

Also used for

organic structures

Fractals – what are they?

Self similar in repeated resolution

Example, the Koch snowflake:

Built with rules, like L-grammars

12/12/2014

18

Fractals – the Julia set

Taking the rule: x -> x2 + c , where c = a + bi

For some x, the update rule leads to infinity,

others go to zero, others do neither.

Result depends on value of x0 (and c)

Graphically, the plot of the result on the complex

plane yields the popular images...

Fractals – the Julia set

12/12/2014

19

Fractals – the Julia set

Values of c change the

structure of which

values of x go to infinity,

zero or other

Generating closed and open

Julia sets

Plotting the values of c that

yield closed sets reveals the

mandlebrot set

Fractals – the Julia set -> the Mandlebrot set

12/12/2014

20

Fractals – the Julia set -> the Mandlebrot set

Fractals – modeling plants and terrain

Anywhere that requires repeated

patterns at varying scales