Skip to content

Commit bcb6659

Browse files
authored
Merge branch 'prezi-4' into p4-composite
2 parents 2027451 + ce6dd60 commit bcb6659

File tree

2 files changed

+129
-38
lines changed

2 files changed

+129
-38
lines changed

source/presentation/4.0/index.md

Lines changed: 27 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1259,7 +1259,7 @@ There are two types of Camera, [`PerspectiveCamera`][prezi-40-model-PerspectiveC
12591259

12601260
### Lights
12611261

1262-
There are four types of Light: AmbientLight, DirectionalLight, PointLight and SpotLight. They have a [`color`][prezi-40-model-color] and an [`intensity`][prezi-40-model-intensity]. SpotLight has an additional property of [`angle`][prezi-40-model-angle] that determines the spread of its light cone.
1262+
There are five types of Light: AmbientLight, DirectionalLight, ImageBasedLight, PointLight, and SpotLight. They have an [`intensity`][prezi-40-model-intensity] property, and all Lights except ImageBasedLight have a [`color`][prezi-40-model-color] property. ImageBasedLight has an additional property of [`environmentMap`][prezi-40-model-environment-map] that specifies the environment map image used to simulate lighting. SpotLight has an additional property of [`angle`][prezi-40-model-angle] that determines the spread of its light cone. PointLights and SpotLights can be painted at specific positions within the Scene. DirectionalLights, PointLights, and SpotLights have directional facing in the Scene that affects how light is casted.
12631263

12641264
If the Scene has no Lights, then the client provides its own lighting as it sees fit.
12651265

@@ -1458,7 +1458,7 @@ The Light is green and has a position, but has its default orientation of lookin
14581458

14591459
>
14601460
**Key Points**
1461-
* This example uses some of the Scene-Specific resources introduced in the next section.
1461+
* This example uses some of the Scene-Specific resources introduced in [3D Supporting Resources](#3d-supporting-resources).
14621462
* A Point Selector explicitly places the model in the Scene via the Painting Annotation's [`target`][prezi-40-model-target] property. In the previous example, there was an implicit Point Selector placing the model at (0,0,0) because no explicit Point Selector was provided.
14631463
* The provided Light should replace any default lighting the client might have.
14641464
{: .note}
@@ -1470,7 +1470,7 @@ Properties: [backgroundColor][prezi-40-model-backgroundColor], [lookAt][prezi-40
14701470

14711471
### Multiple 3D Objects with Transforms
14721472

1473-
This example is a Manifest with a single Scene with multiple models painted into the Scene at specific positions with transforms applied. It represents a collection of chess game pieces with multiple pawns and a single queen. The example demonstrates painting multiple models into a Scene, including one Content Resource being painted into a Scene multiple times. Transforms and Point Selectors are used to establish position and scale for Annotations. Some external web resources referenced as Content Resources may include elements such as lights or audio that are undesirable within a Manifest, and the [`exclude`][prezi-40-model-exclude] property is used to prevent these from being rendered. The property [`interactionMode`][prezi-40-model-interactionMode] is used to guide clients in how to best guide or limit user interaction with rendered content.
1473+
This example is a Manifest with a single Scene with multiple models painted into the Scene at specific positions with transforms applied. It represents a collection of chess game pieces with multiple pawns and a single queen. The example demonstrates painting multiple models into a Scene, including one Content Resource being painted into a Scene multiple times. Transforms and Point Selectors are used to establish position and scale for Annotations. Some external web resources referenced as Content Resources may include elements such as lights or audio that are undesirable within a Manifest, and the [`exclude`][prezi-40-model-exclude] property is used to prevent these from being rendered. The property [`interactionMode`][prezi-40-model-interactionMode] is used to guide clients in how to best guide or limit user interaction with rendered content. This example also introduces an Image-Based Light Annotation to simulate real-world lighting of the chess game pieces.
14741474

14751475
```jsonc
14761476
{
@@ -1518,7 +1518,7 @@ This example is a Manifest with a single Scene with multiple models painted into
15181518
}
15191519
},
15201520
{
1521-
"id": "https://example.org/iiif/3d/anno1",
1521+
"id": "https://example.org/iiif/3d/anno2",
15221522
"type": "Annotation",
15231523
"motivation": ["painting"],
15241524
"body":
@@ -1563,7 +1563,7 @@ This example is a Manifest with a single Scene with multiple models painted into
15631563
}
15641564
},
15651565
{
1566-
"id": "https://example.org/iiif/3d/anno1",
1566+
"id": "https://example.org/iiif/3d/anno3",
15671567
"type": "Annotation",
15681568
"motivation": ["painting"],
15691569
"exclude": ["Audio", "Lights"],
@@ -1601,6 +1601,27 @@ This example is a Manifest with a single Scene with multiple models painted into
16011601
}
16021602
]
16031603
}
1604+
]
1605+
},
1606+
{
1607+
"id": "https://example.org/iiif/3d/anno4",
1608+
"type": "Annotation",
1609+
"motivation": ["painting"],
1610+
"body": {
1611+
"id": "https://example.org/iiif/3d/lights/1",
1612+
"type": "ImageBasedLight",
1613+
"label": {"en": ["Image-Based Light"]},
1614+
"environmentMap": {
1615+
"id": "https://example.org/iiif/light/3/environment.hdr",
1616+
"type": "Image",
1617+
"format": "image/vnd.radiance",
1618+
"profile": "equirectangular"
1619+
}
1620+
},
1621+
"target": {
1622+
"id": "https://example.org/iiif/scene1/page/p1/1",
1623+
"type": "Scene"
1624+
}
16041625
}
16051626
]
16061627
}
@@ -1615,6 +1636,7 @@ This example is a Manifest with a single Scene with multiple models painted into
16151636
* Each Annotation is painted into the Scene at a different point via Point Selectors.
16161637
* The second Annotation represents a pawn game piece that is tipped over, and Transforms are used to achieve this. RotateTransform is used to tip the pawn over and TranslateTransform is used to align the bottom of the pawn with the coordinate origin's XY plane.
16171638
* The third Annotation represents a queen game piece that is scaled to be larger than the pawns using ScaleTransform.
1639+
* The fourth Annotation represents an Image-Based Light where an environment map texture image is used to simulate omnidirectional real-world light on the chess game pieces.
16181640
* The [`exclude`][prezi-40-model-exclude] property instructs clients not to import or render any external audio or light content present in the Content Resource for the queen game piece.
16191641
* The [`interactionMode`][prezi-40-model-interactionMode] property instructs clients that, if possible, user interactions relating to orbiting the scene should be restricted to a hemisphere.
16201642
{: .note}

0 commit comments

Comments
 (0)