19
1 Virtual Environments Darcy Zelenko Module 1 - Ideation, presentation

Virtual Environments Module 1 presentation

Embed Size (px)

DESCRIPTION

Presentation slides

Citation preview

Page 1: Virtual Environments Module 1 presentation

1

V i r t u a l E n v i r o n m e n t sD a r c y Z e l e n k oM o d u l e 1 - I d e a t i o n , p r e s e n t a t i o n

Page 2: Virtual Environments Module 1 presentation

2

A Belousov-Zhabotinisky (BZ) reaction can be described as the self organisation of spirals on a two-dimensional plane caused by a temporally oscillating chemical reaction.

Page 3: Virtual Environments Module 1 presentation

3

Page 4: Virtual Environments Module 1 presentation

4

Recipe for simulating aBelousov-Zhbotinsky reaction1. Define origin points2. Spirals of equal scale emanate from the above points at an equal rate3. As spirals grow continuously bigger they will start to interfer with each other, like rip-ples in a pond4. Constructive/deconstructive interference will lead to the creation of new curves5. Go back to 2

float [][][] a;float [][][] b;float [][][] c; int p = 0, q = 1; void setup(){ size(400,400); colorMode(HSB,1.0); a = new float [width][height][2]; b = new float [width][height][2]; c = new float [width][height][2]; for (int x = 0; x < width; x++) { for (int y = 0; y < height; y++) { a[x][y][p] = random(0.0,1.0); b[x][y][p] = random(0.0,1.0); c[x][y][p] = random(0.0,1.0); set(x,y,color(0.5,0.7,a[x][y][p])); } }}void draw(){ for (int x = 0; x < width; x++) { for (int y = 0; y < height; y++) { float c_a = 0.0; float c_b = 0.0; float c_c = 0.0; for (int i = x - 1; i <= x+1; i++) { for (int j = y - 1; j <= y+1; j++) { c_a += a[(i+width)%width][(j+height)%height][p]; c_b += b[(i+width)%width][(j+height)%height][p]; c_c += c[(i+width)%width][(j+height)%height][p]; } } c_a /= 9.0; c_b /= 9.0; c_c /= 9.0; // adjust these values to alter behaviour a[x][y][q] = constrain(c_a + c_a * (c_b - c_c), 0, 1); b[x][y][q] = constrain(c_b + c_b * (c_c - c_a), 0, 1); c[x][y][q] = constrain(c_c + c_c * (c_a - c_b), 0, 1); set(x,y,color(0.5,0.7,a[x][y][q])); } } if (p == 0) { p = 1; q = 0; } else { p = 0; q = 1; }}

Page 5: Virtual Environments Module 1 presentation

5

Emerging Form

Page 6: Virtual Environments Module 1 presentation

6

Page 7: Virtual Environments Module 1 presentation

7

Page 8: Virtual Environments Module 1 presentation

8

Page 9: Virtual Environments Module 1 presentation

9

Page 10: Virtual Environments Module 1 presentation

10

Page 11: Virtual Environments Module 1 presentation

11

Page 12: Virtual Environments Module 1 presentation

12

Page 13: Virtual Environments Module 1 presentation

13

Page 14: Virtual Environments Module 1 presentation

14

Page 15: Virtual Environments Module 1 presentation

15

Page 16: Virtual Environments Module 1 presentation

16

Page 17: Virtual Environments Module 1 presentation

17

Effects-based Lighting

Page 18: Virtual Environments Module 1 presentation

18

Page 19: Virtual Environments Module 1 presentation

19