interactive objects integration
This commit is contained in:
@@ -2,24 +2,24 @@ import { TextureLoader, MeshStandardMaterial, MeshBasicMaterial, PlaneGeometry,
|
||||
import { assignParams } from "@/lib/MeshUtils";
|
||||
|
||||
class ImageObject {
|
||||
constructor(obj, context) {
|
||||
var t = new TextureLoader().setPath(context.path).load(obj.value);
|
||||
constructor(obj, engine, params) {
|
||||
var t = new TextureLoader().setPath(params.path).load(obj.value);
|
||||
//t.encoding = sRGBEncoding;
|
||||
var mp = {
|
||||
map: t,
|
||||
alphaTest: 0.5
|
||||
};
|
||||
if (obj.nm) {
|
||||
mp.normalMap = new TextureLoader().setPath(context.path).load(obj.nm);
|
||||
mp.normalMap = new TextureLoader().setPath(params.path).load(obj.nm);
|
||||
}
|
||||
if (obj.em) {
|
||||
mp.emissiveMap = new TextureLoader().setPath(context.path).load(obj.em);
|
||||
mp.emissiveMap = new TextureLoader().setPath(params.path).load(obj.em);
|
||||
}
|
||||
if (obj.am) {
|
||||
mp.alphaMap = new TextureLoader().setPath(context.path).load(obj.am);
|
||||
mp.alphaMap = new TextureLoader().setPath(params.path).load(obj.am);
|
||||
}
|
||||
obj.material && Object.assign(mp, obj.material);
|
||||
let geo = new PlaneGeometry(context.wallSize * (obj.w || 1), context.wallSize * (obj.h || 1));
|
||||
let geo = new PlaneGeometry(params.wallSize * (obj.w || 1), params.wallSize * (obj.h || 1));
|
||||
if (obj.uv) {
|
||||
var uvAttribute = geo.attributes.uv;
|
||||
for (var i = 0; i < uvAttribute.count; i++) {
|
||||
|
||||
Reference in New Issue
Block a user