МУЛТИМЕДИЯ и ОСНОВИ НА WEB ДИЗАЙНА

УПРАЖНЕНИЕ 7 - задача 7.2

Създаване на светлинен ефект във VRML сцена

ТЕОРИЯ : Задачата включва знания за създаване на светлина чрез PointLight Node. Описание на възлите необходими за изпълнение на задачата можете да намерите в ЛЕКЦИЯ 14 от курса на дисциплината МОWД.

ЗАДАЧА 7.2: Създайте готическа сграда със светлинно кълбо в средата(фиг.7.2.1).

За изпълнение на задачата първо свалете и разархивирайте папката с файлове към упражнението.


Фиг.7.2.1 Готическа сграда със светлинно кълбо

1. Създайте нов VRML файл. Запишете го в разархивираната папка с име gotic_hall (FilesUpr7/Task7_2/gotic_hall.wrl).

2. Аналогично на предходната задача създайте група непосредствено под заглавния ред.

     Group {
        children [

        ]
     }

3. Направете тавана и колоните на готическата сграда, като вмъкнете в сцената файла vaulted.wrl.

     Inline {
        url "vaulted.wrl"
        bboxCenter 0.0 1.0 0.0
        bboxSize 6.0 2.0 6.0
     }

4. Направете пода на сградата, като вмъкнете в сцената файла mesh.wrl.

     Inline {
        url "mesh.wrl"
        bboxCenter 0.0 0.0 0.0
        bboxSize 15.0 0.0 15.0
     }

5. Създайте сфера с радиус 0.2, текстура fire.jpg за обвивка и светлина тип PointLight. Задайте позиция на светлинния източник центъра на координатната система, радиус 10.0, интензивност 1.0, осветеност 0.2 и цвят 0.7 0.5 0.0.

    Transform {
      translation 0.0 1.0 0.0
      children [
        PointLight {
          location 0.0 0.0 0.0
          radius 10.0
          intensity 1.0
          ambientIntensity 0.2
          color 0.7 0.5 0.0
        }
        Shape {
          appearance Appearance {
            texture ImageTexture {
             url "fire.jpg"
            }
          }
          geometry Sphere { radius 0.2 }
        }
      ]
    }

6. Създайте пиедестала под сферата във вид на пирамида, като изплзвате IndexedFaceSet. Задайте име White на оцветяването на пиедестала, което след това ще използвате за основата на пиедестала.

    Shape {
      appearance DEF White Appearance {
        material Material { }
      }
      geometry IndexedFaceSet {
        coord Coordinate {
          point [
            -0.12 0.03 0.12, 0.12 0.03 0.12,
             0.12 0.03 -0.12, -0.12 0.03 -0.12,
             0.0 0.63 0.0,
          ]
        }
        coordIndex [
          0, 1, 4, -1, 1, 2, 4, -1,
          2, 3, 4, -1, 3, 0, 4, -1,
        ]
        solid TRUE
      }
    }

7. Накрая направете основата на пиедестала като използвате примитив Box.

    Transform {
      translation 0.0 0.015 0.0
      children Shape {
        appearance USE White
        geometry Box { size 0.4 0.03 0.4 }
      }
    }

8. Съхранете направените промени и разгледайте светлинния ефект в сцената.