Refactoring: Centralize TV screen material creation
This commit is contained in:
@@ -136,12 +136,7 @@ export function createTvSet(x, z, rotY) {
|
||||
|
||||
// Position the curved screen
|
||||
state.tvScreen.position.set(0.0, 1.5, -2.1);
|
||||
state.tvScreen.material = new THREE.MeshPhongMaterial({
|
||||
color: 0x0a0a0a, // Deep black
|
||||
shininess: 5,
|
||||
specular: 0x111111
|
||||
});
|
||||
state.tvScreen.material.needsUpdate = true;
|
||||
turnTvScreenOff();
|
||||
tvGroup.add(state.tvScreen);
|
||||
|
||||
tvGroup.position.set(x, 0, z);
|
||||
@@ -164,4 +159,30 @@ export function createTvSet(x, z, rotY) {
|
||||
tvGroup.add(vcr);
|
||||
|
||||
state.scene.add(tvGroup);
|
||||
}
|
||||
|
||||
export function turnTvScreenOff() {
|
||||
if (state.tvScreen.material) {
|
||||
state.tvScreen.material.dispose();
|
||||
}
|
||||
state.tvScreen.material = new THREE.MeshPhongMaterial({
|
||||
color: 0x203530,
|
||||
shininess: 45,
|
||||
specular: 0x111111,
|
||||
});
|
||||
state.tvScreen.material.needsUpdate = true;
|
||||
}
|
||||
|
||||
export function turnTvScreenOn() {
|
||||
if (state.tvScreen.material) {
|
||||
state.tvScreen.material.dispose();
|
||||
}
|
||||
state.tvScreen.material = new THREE.MeshBasicMaterial({
|
||||
color: 0xffffff,
|
||||
map: state.videoTexture,
|
||||
fog: false,
|
||||
lightMapIntensity: 0,
|
||||
reflectivity: 0
|
||||
});
|
||||
state.tvScreen.material.needsUpdate = true;
|
||||
}
|
||||
Reference in New Issue
Block a user