mirror of
https://github.com/misskey-dev/misskey.git
synced 2026-06-04 12:24:10 +02:00
wip
This commit is contained in:
Binary file not shown.
Binary file not shown.
@@ -13,6 +13,7 @@
|
|||||||
* - なお、現状 __TOP__ / __SIDE__ メッシュは単一の面でなければなりません。つまりArray Modifierなどを適用した状態では正しく動作しません。
|
* - なお、現状 __TOP__ / __SIDE__ メッシュは単一の面でなければなりません。つまりArray Modifierなどを適用した状態では正しく動作しません。
|
||||||
* - メッシュ名を __COLLISION__ で始めると、コリジョン用メッシュとして扱われます。このメッシュはシーク時のレイのヒットチェックにも使われます。当該メッシュはレンダリングでは表示されません。
|
* - メッシュ名を __COLLISION__ で始めると、コリジョン用メッシュとして扱われます。このメッシュはシーク時のレイのヒットチェックにも使われます。当該メッシュはレンダリングでは表示されません。
|
||||||
* - コリジョン用メッシュが無い場合、すべてのメッシュがコリジョン用メッシュとして扱われますが、例えば網目のようなメッシュではレイが隙間を通り抜けて後ろにあるオブジェクトにヒットしてしまうなどの問題が発生します。
|
* - コリジョン用メッシュが無い場合、すべてのメッシュがコリジョン用メッシュとして扱われますが、例えば網目のようなメッシュではレイが隙間を通り抜けて後ろにあるオブジェクトにヒットしてしまうなどの問題が発生します。
|
||||||
|
* - シェイプキーを使用する場合、normalのエクスポートが有効だと面のレンダリングがおかしくなる場合があります。その場合は無効化してください。
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// TODO: 家具設置時のコリジョン判定(めりこんで設置されないようにする)
|
// TODO: 家具設置時のコリジョン判定(めりこんで設置されないようにする)
|
||||||
|
|||||||
@@ -5,7 +5,9 @@
|
|||||||
|
|
||||||
import * as BABYLON from '@babylonjs/core';
|
import * as BABYLON from '@babylonjs/core';
|
||||||
import { defineObject } from '../engine.js';
|
import { defineObject } from '../engine.js';
|
||||||
import { createPlaneUvMapper, getPlaneUvIndexes } from '../utility.js';
|
import { createPlaneUvMapper } from '../utility.js';
|
||||||
|
|
||||||
|
// NOTE: シェイプキーのnormalのエクスポートは無効にしないとmatを大きくしたときに面のレンダリングがグリッチする
|
||||||
|
|
||||||
export const pictureFrame = defineObject({
|
export const pictureFrame = defineObject({
|
||||||
id: 'pictureFrame',
|
id: 'pictureFrame',
|
||||||
@@ -66,15 +68,15 @@ export const pictureFrame = defineObject({
|
|||||||
width: 0.15,
|
width: 0.15,
|
||||||
height: 0.15,
|
height: 0.15,
|
||||||
frameThickness: 0.3,
|
frameThickness: 0.3,
|
||||||
matHThickness: 0.5,
|
matHThickness: 0.35,
|
||||||
matVThickness: 0.5,
|
matVThickness: 0.35,
|
||||||
customPicture: null,
|
customPicture: null,
|
||||||
fit: 'cover',
|
fit: 'cover',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
placement: 'side',
|
placement: 'side',
|
||||||
createInstance: ({ room, root, options, findMaterial, findMesh, meshUpdated }) => {
|
createInstance: ({ room, root, options, findMaterial, findMesh, meshUpdated }) => {
|
||||||
const MAT_THICKNESS_FACTOR = 0.49; // 0.5を超えるとなんかメッシュのレンダリングがグリッチするため
|
const MAT_THICKNESS_FACTOR = 0.9;
|
||||||
|
|
||||||
const frameMesh = findMesh('__X_FRAME__');
|
const frameMesh = findMesh('__X_FRAME__');
|
||||||
frameMesh.rotationQuaternion = null;
|
frameMesh.rotationQuaternion = null;
|
||||||
|
|||||||
Reference in New Issue
Block a user