зеркало из https://github.com/mozilla/Spoke.git
Merge pull request #1079 from mozilla/feature/enabled-flag
Enabled/Disabled Elements and Default Collapsed State
This commit is contained in:
Коммит
de2209b8f0
|
@ -350,7 +350,7 @@ export default class Editor extends EventEmitter {
|
|||
|
||||
const scene = this.scene;
|
||||
|
||||
const floorPlanNode = scene.findNodeByType(FloorPlanNode);
|
||||
const floorPlanNode = scene.findNodeByType(FloorPlanNode, false);
|
||||
|
||||
if (floorPlanNode) {
|
||||
await floorPlanNode.generate(signal);
|
||||
|
|
|
@ -10,6 +10,7 @@ import { Color, Object3D } from "three";
|
|||
import serializeColor from "../utils/serializeColor";
|
||||
import LoadingCube from "../objects/LoadingCube";
|
||||
import ErrorIcon from "../objects/ErrorIcon";
|
||||
import traverseFilteredSubtrees from "../utils/traverseFilteredSubtrees";
|
||||
|
||||
export default function EditorNodeMixin(Object3DClass) {
|
||||
return class extends Object3DClass {
|
||||
|
@ -56,7 +57,13 @@ export default function EditorNodeMixin(Object3DClass) {
|
|||
const visibleComponent = json.components.find(c => c.name === "visible");
|
||||
|
||||
if (visibleComponent) {
|
||||
node.visible = visibleComponent.props.visible;
|
||||
node._visible = visibleComponent.props.visible;
|
||||
}
|
||||
|
||||
const editorSettingsComponent = json.components.find(c => c.name === "editor-settings");
|
||||
|
||||
if (editorSettingsComponent) {
|
||||
node.enabled = editorSettingsComponent.props.enabled;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -70,13 +77,14 @@ export default function EditorNodeMixin(Object3DClass) {
|
|||
this.nodeName = this.constructor.nodeName;
|
||||
this.name = this.constructor.nodeName;
|
||||
this.isNode = true;
|
||||
this.isCollapsed = false;
|
||||
this.disableTransform = this.constructor.disableTransform;
|
||||
this.useMultiplePlacementMode = this.constructor.useMultiplePlacementMode;
|
||||
this.ignoreRaycast = this.constructor.ignoreRaycast;
|
||||
|
||||
this.staticMode = StaticModes.Inherits;
|
||||
this.originalStaticMode = null;
|
||||
this.enabled = true;
|
||||
this._visible = true;
|
||||
this.saveParent = false;
|
||||
this.loadingCube = null;
|
||||
this.errorIcon = null;
|
||||
|
@ -110,10 +118,20 @@ export default function EditorNodeMixin(Object3DClass) {
|
|||
}
|
||||
|
||||
this.issues = source.issues.slice();
|
||||
this._visible = source._visible;
|
||||
this.enabled = source.enabled;
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
get visible() {
|
||||
return this.enabled && this._visible;
|
||||
}
|
||||
|
||||
set visible(value) {
|
||||
this._visible = value;
|
||||
}
|
||||
|
||||
onPlay() {}
|
||||
|
||||
onUpdate(dt) {
|
||||
|
@ -163,7 +181,13 @@ export default function EditorNodeMixin(Object3DClass) {
|
|||
{
|
||||
name: "visible",
|
||||
props: {
|
||||
visible: this.visible
|
||||
visible: this._visible
|
||||
}
|
||||
},
|
||||
{
|
||||
name: "editor-settings",
|
||||
props: {
|
||||
enabled: this.enabled
|
||||
}
|
||||
}
|
||||
]
|
||||
|
@ -345,40 +369,46 @@ export default function EditorNodeMixin(Object3DClass) {
|
|||
return isDynamic(this);
|
||||
}
|
||||
|
||||
findNodeByType(nodeType) {
|
||||
if (this.constructor === nodeType) {
|
||||
return this;
|
||||
}
|
||||
findNodeByType(nodeType, includeDisabled = true) {
|
||||
let node = null;
|
||||
|
||||
for (const child of this.children) {
|
||||
if (child.isNode) {
|
||||
const result = child.findNodeByType(nodeType);
|
||||
|
||||
if (result) {
|
||||
return result;
|
||||
}
|
||||
traverseFilteredSubtrees(this, child => {
|
||||
if (node) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
if (!child.isNode) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!child.enabled && !includeDisabled) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (child.constructor === nodeType) {
|
||||
node = child;
|
||||
}
|
||||
});
|
||||
|
||||
return node;
|
||||
}
|
||||
|
||||
getNodesByType(nodeType) {
|
||||
getNodesByType(nodeType, includeDisabled = true) {
|
||||
const nodes = [];
|
||||
|
||||
if (this.constructor === nodeType) {
|
||||
nodes.push(this);
|
||||
}
|
||||
|
||||
for (const child of this.children) {
|
||||
if (child.isNode) {
|
||||
const results = child.getNodesByType(nodeType);
|
||||
|
||||
for (const result of results) {
|
||||
nodes.push(result);
|
||||
}
|
||||
traverseFilteredSubtrees(this, child => {
|
||||
if (!child.isNode) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (!child.enabled && !includeDisabled) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (child.constructor === nodeType) {
|
||||
nodes.push(this);
|
||||
}
|
||||
});
|
||||
|
||||
return nodes;
|
||||
}
|
||||
|
|
|
@ -9,6 +9,7 @@ import RecastClient from "../recast/RecastClient";
|
|||
import HeightfieldClient from "../heightfield/HeightfieldClient";
|
||||
import SpawnPointNode from "../nodes/SpawnPointNode";
|
||||
import * as recastWasmUrl from "recast-wasm/dist/recast.wasm";
|
||||
import traverseFilteredSubtrees from "../utils/traverseFilteredSubtrees";
|
||||
|
||||
const recastClient = new RecastClient();
|
||||
const heightfieldClient = new HeightfieldClient();
|
||||
|
@ -102,13 +103,17 @@ export default class FloorPlanNode extends EditorNodeMixin(FloorPlan) {
|
|||
const collidableMeshes = [];
|
||||
const walkableMeshes = [];
|
||||
|
||||
const groundPlaneNode = this.editor.scene.findNodeByType(GroundPlaneNode);
|
||||
const groundPlaneNode = this.editor.scene.findNodeByType(GroundPlaneNode, false);
|
||||
|
||||
if (groundPlaneNode && groundPlaneNode.walkable) {
|
||||
walkableMeshes.push(groundPlaneNode.walkableMesh);
|
||||
}
|
||||
|
||||
this.editor.scene.traverse(object => {
|
||||
traverseFilteredSubtrees(this.editor.scene, object => {
|
||||
if (!object.enabled) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (object.isNode && object.model && (object.collidable || object.walkable)) {
|
||||
object.model.traverse(child => {
|
||||
if (child.isMesh) {
|
||||
|
@ -124,7 +129,7 @@ export default class FloorPlanNode extends EditorNodeMixin(FloorPlan) {
|
|||
}
|
||||
});
|
||||
|
||||
const boxColliderNodes = this.editor.scene.getNodesByType(BoxColliderNode);
|
||||
const boxColliderNodes = this.editor.scene.getNodesByType(BoxColliderNode, false);
|
||||
|
||||
for (const node of boxColliderNodes) {
|
||||
if (node.walkable) {
|
||||
|
@ -179,7 +184,7 @@ export default class FloorPlanNode extends EditorNodeMixin(FloorPlan) {
|
|||
|
||||
let heightfield = null;
|
||||
if (!this.forceTrimesh) {
|
||||
const spawnPoints = this.editor.scene.getNodesByType(SpawnPointNode);
|
||||
const spawnPoints = this.editor.scene.getNodesByType(SpawnPointNode, false);
|
||||
|
||||
let minY = Number.POSITIVE_INFINITY;
|
||||
for (let j = 0; j < spawnPoints.length; j++) {
|
||||
|
|
|
@ -7,6 +7,7 @@ import GroupNode from "./GroupNode";
|
|||
import getNodeWithUUID from "../utils/getNodeWithUUID";
|
||||
import serializeColor from "../utils/serializeColor";
|
||||
import { DistanceModelType } from "../objects/AudioSource";
|
||||
import traverseFilteredSubtrees from "../utils/traverseFilteredSubtrees";
|
||||
|
||||
// Migrate v1 spoke scene to v2
|
||||
function migrateV1ToV2(json) {
|
||||
|
@ -528,7 +529,11 @@ export default class SceneNode extends EditorNodeMixin(Scene) {
|
|||
});
|
||||
|
||||
for (const node of nodeList) {
|
||||
node.prepareForExport(ctx);
|
||||
if (node.enabled) {
|
||||
node.prepareForExport(ctx);
|
||||
} else {
|
||||
node.parent.remove(node);
|
||||
}
|
||||
}
|
||||
|
||||
this.addGLTFComponent("background", {
|
||||
|
@ -617,8 +622,16 @@ export default class SceneNode extends EditorNodeMixin(Scene) {
|
|||
getAnimationClips() {
|
||||
const animations = [];
|
||||
|
||||
this.traverse(child => {
|
||||
if (child.isNode && child.type === "Model") {
|
||||
traverseFilteredSubtrees(this, child => {
|
||||
if (!child.isNode) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!child.enabled) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (child.type === "Model") {
|
||||
animations.push(...child.clips);
|
||||
}
|
||||
});
|
||||
|
@ -630,18 +643,23 @@ export default class SceneNode extends EditorNodeMixin(Scene) {
|
|||
const contentAttributions = [];
|
||||
const seenAttributions = new Set();
|
||||
|
||||
this.traverse(obj => {
|
||||
if (!(obj.isNode && obj.attribution)) return;
|
||||
traverseFilteredSubtrees(this, obj => {
|
||||
if (!obj.isNode) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!obj.enabled) {
|
||||
return false;
|
||||
}
|
||||
|
||||
const attribution = obj.attribution;
|
||||
|
||||
if (!attribution) return;
|
||||
|
||||
if (attribution) {
|
||||
const attributionKey = attribution.url || `${attribution.title}_${attribution.author}`;
|
||||
if (seenAttributions.has(attributionKey)) return;
|
||||
seenAttributions.add(attributionKey);
|
||||
contentAttributions.push(attribution);
|
||||
}
|
||||
const attributionKey = attribution.url || `${attribution.title}_${attribution.author}`;
|
||||
if (seenAttributions.has(attributionKey)) return;
|
||||
seenAttributions.add(attributionKey);
|
||||
contentAttributions.push(attribution);
|
||||
});
|
||||
|
||||
return contentAttributions;
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
export default function traverseFilteredSubtrees(object, cb) {
|
||||
if (cb(object) === false) {
|
||||
return;
|
||||
}
|
||||
|
||||
const children = object.children;
|
||||
|
||||
for (let i = 0; i < children.length; i++) {
|
||||
traverseFilteredSubtrees(children[i], cb);
|
||||
}
|
||||
}
|
|
@ -132,6 +132,7 @@ const TreeNodeLabel = styled.div`
|
|||
color: ${props => (props.isOver && props.canDrop ? props.theme.text : "inherit")};
|
||||
border-radius: 4px;
|
||||
padding: 0 2px;
|
||||
text-decoration: ${props => (props.enabled ? "none" : "line-through")};
|
||||
`;
|
||||
|
||||
function borderStyle({ isOver, canDrop, position }) {
|
||||
|
@ -173,7 +174,7 @@ function TreeNode({
|
|||
style
|
||||
}) {
|
||||
const node = nodes[index];
|
||||
const { isLeaf, object, depth, selected, active, iconComponent, isCollapsed, childIndex, lastChild } = node;
|
||||
const { isLeaf, object, depth, selected, active, iconComponent, isExpanded, childIndex, lastChild, enabled } = node;
|
||||
|
||||
const editor = useContext(EditorContext);
|
||||
|
||||
|
@ -432,8 +433,8 @@ function TreeNode({
|
|||
{isLeaf ? (
|
||||
<TreeNodeLeafSpacer />
|
||||
) : (
|
||||
<TreeNodeToggle collapsed={isCollapsed} onClick={onClickToggle}>
|
||||
{isCollapsed ? <CaretRight size={12} /> : <CaretDown size={12} />}
|
||||
<TreeNodeToggle onClick={onClickToggle}>
|
||||
{isExpanded ? <CaretDown size={12} /> : <CaretRight size={12} />}
|
||||
</TreeNodeToggle>
|
||||
)}
|
||||
|
||||
|
@ -452,7 +453,7 @@ function TreeNode({
|
|||
/>
|
||||
</TreeNodeRenameInputContainer>
|
||||
) : (
|
||||
<TreeNodeLabel canDrop={canDropOn} isOver={isOverOn}>
|
||||
<TreeNodeLabel enabled={enabled} canDrop={canDropOn} isOver={isOverOn}>
|
||||
{object.name}
|
||||
</TreeNodeLabel>
|
||||
)}
|
||||
|
@ -485,9 +486,10 @@ TreeNode.propTypes = {
|
|||
selected: PropTypes.bool,
|
||||
active: PropTypes.bool,
|
||||
iconComponent: PropTypes.object,
|
||||
isCollapsed: PropTypes.bool,
|
||||
isExpanded: PropTypes.bool,
|
||||
childIndex: PropTypes.number.isRequired,
|
||||
lastChild: PropTypes.bool.isRequired
|
||||
lastChild: PropTypes.bool.isRequired,
|
||||
enabled: PropTypes.bool.isRequired
|
||||
})
|
||||
),
|
||||
renamingNode: PropTypes.object,
|
||||
|
@ -506,38 +508,41 @@ TreeNode.propTypes = {
|
|||
|
||||
const MemoTreeNode = memo(TreeNode, areEqual);
|
||||
|
||||
function* treeWalker(editor, collapsedNodes) {
|
||||
function* treeWalker(editor, expandedNodes) {
|
||||
const stack = [];
|
||||
|
||||
stack.push({
|
||||
depth: 0,
|
||||
object: editor.scene,
|
||||
childIndex: 0,
|
||||
lastChild: true
|
||||
lastChild: true,
|
||||
parentEnabled: true
|
||||
});
|
||||
|
||||
while (stack.length !== 0) {
|
||||
const { depth, object, childIndex, lastChild } = stack.pop();
|
||||
const { depth, object, childIndex, lastChild, parentEnabled } = stack.pop();
|
||||
|
||||
const NodeEditor = editor.getNodeEditor(object) || DefaultNodeEditor;
|
||||
const iconComponent = NodeEditor.iconComponent || DefaultNodeEditor.iconComponent;
|
||||
|
||||
const isCollapsed = collapsedNodes[object.id];
|
||||
const isExpanded = expandedNodes[object.id] || object === editor.scene;
|
||||
const enabled = parentEnabled && object.enabled;
|
||||
|
||||
yield {
|
||||
id: object.id,
|
||||
isLeaf: object.children.filter(c => c.isNode).length === 0,
|
||||
isCollapsed,
|
||||
isExpanded,
|
||||
depth,
|
||||
object,
|
||||
iconComponent,
|
||||
selected: editor.selected.indexOf(object) !== -1,
|
||||
active: editor.selected.length > 0 && object === editor.selected[editor.selected.length - 1],
|
||||
enabled,
|
||||
childIndex,
|
||||
lastChild
|
||||
};
|
||||
|
||||
if (object.children.length !== 0 && !isCollapsed) {
|
||||
if (object.children.length !== 0 && isExpanded) {
|
||||
for (let i = object.children.length - 1; i >= 0; i--) {
|
||||
const child = object.children[i];
|
||||
|
||||
|
@ -546,7 +551,8 @@ function* treeWalker(editor, collapsedNodes) {
|
|||
depth: depth + 1,
|
||||
object: child,
|
||||
childIndex: i,
|
||||
lastChild: i === 0
|
||||
lastChild: i === 0,
|
||||
parentEnabled: enabled
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@ -558,68 +564,68 @@ export default function HierarchyPanel() {
|
|||
const editor = useContext(EditorContext);
|
||||
const onUpload = useUpload(uploadOptions);
|
||||
const [renamingNode, setRenamingNode] = useState(null);
|
||||
const [collapsedNodes, setCollapsedNodes] = useState({});
|
||||
const [expandedNodes, setExpandedNodes] = useState({});
|
||||
const [nodes, setNodes] = useState([]);
|
||||
const updateNodeHierarchy = useCallback(() => {
|
||||
setNodes(Array.from(treeWalker(editor, collapsedNodes)));
|
||||
}, [editor, collapsedNodes]);
|
||||
setNodes(Array.from(treeWalker(editor, expandedNodes)));
|
||||
}, [editor, expandedNodes]);
|
||||
|
||||
const expandNode = useCallback(
|
||||
node => {
|
||||
delete collapsedNodes[node.id];
|
||||
setCollapsedNodes({ ...collapsedNodes });
|
||||
setExpandedNodes({ ...expandedNodes, [node.id]: true });
|
||||
},
|
||||
[collapsedNodes]
|
||||
[expandedNodes]
|
||||
);
|
||||
|
||||
const collapseNode = useCallback(
|
||||
node => {
|
||||
setCollapsedNodes({ ...collapsedNodes, [node.id]: true });
|
||||
delete expandedNodes[node.id];
|
||||
setExpandedNodes({ ...expandedNodes });
|
||||
},
|
||||
[setCollapsedNodes, collapsedNodes]
|
||||
[setExpandedNodes, expandedNodes]
|
||||
);
|
||||
|
||||
const expandChildren = useCallback(
|
||||
node => {
|
||||
node.object.traverse(child => {
|
||||
if (child.isNode) {
|
||||
delete collapsedNodes[child.id];
|
||||
expandedNodes[child.id] = true;
|
||||
}
|
||||
});
|
||||
setCollapsedNodes({ ...collapsedNodes });
|
||||
setExpandedNodes({ ...expandedNodes });
|
||||
},
|
||||
[setCollapsedNodes, collapsedNodes]
|
||||
[setExpandedNodes, expandedNodes]
|
||||
);
|
||||
|
||||
const collapseChildren = useCallback(
|
||||
node => {
|
||||
node.object.traverse(child => {
|
||||
if (child.isNode) {
|
||||
collapsedNodes[child.id] = true;
|
||||
delete expandedNodes[child.id];
|
||||
}
|
||||
});
|
||||
setCollapsedNodes({ ...collapsedNodes });
|
||||
setExpandedNodes({ ...expandedNodes });
|
||||
},
|
||||
[setCollapsedNodes, collapsedNodes]
|
||||
[setExpandedNodes, expandedNodes]
|
||||
);
|
||||
|
||||
const onExpandAllNodes = useCallback(() => {
|
||||
setCollapsedNodes({});
|
||||
}, [setCollapsedNodes]);
|
||||
|
||||
const onCollapseAllNodes = useCallback(() => {
|
||||
const newCollapsedNodes = {};
|
||||
const newExpandedNodes = {};
|
||||
editor.scene.traverse(child => {
|
||||
if (child.isNode) {
|
||||
newCollapsedNodes[child.id] = true;
|
||||
newExpandedNodes[child.id] = true;
|
||||
}
|
||||
});
|
||||
setCollapsedNodes(newCollapsedNodes);
|
||||
}, [editor, setCollapsedNodes]);
|
||||
setExpandedNodes(newExpandedNodes);
|
||||
}, [editor, setExpandedNodes]);
|
||||
|
||||
const onCollapseAllNodes = useCallback(() => {
|
||||
setExpandedNodes({});
|
||||
}, [setExpandedNodes]);
|
||||
|
||||
const onObjectChanged = useCallback(
|
||||
(objects, propertyName) => {
|
||||
if (propertyName === "name" || !propertyName) {
|
||||
if (propertyName === "name" || propertyName === "enabled" || !propertyName) {
|
||||
updateNodeHierarchy();
|
||||
}
|
||||
},
|
||||
|
@ -664,13 +670,13 @@ export default function HierarchyPanel() {
|
|||
|
||||
const onToggle = useCallback(
|
||||
(_e, node) => {
|
||||
if (collapsedNodes[node.id]) {
|
||||
expandNode(node);
|
||||
} else {
|
||||
if (expandedNodes[node.id]) {
|
||||
collapseNode(node);
|
||||
} else {
|
||||
expandNode(node);
|
||||
}
|
||||
},
|
||||
[collapsedNodes, expandNode, collapseNode]
|
||||
[expandedNodes, expandNode, collapseNode]
|
||||
);
|
||||
|
||||
const onKeyDown = useCallback(
|
||||
|
@ -838,7 +844,7 @@ export default function HierarchyPanel() {
|
|||
|
||||
useEffect(() => {
|
||||
updateNodeHierarchy();
|
||||
}, [collapsedNodes, updateNodeHierarchy]);
|
||||
}, [expandedNodes, updateNodeHierarchy]);
|
||||
|
||||
return (
|
||||
<Panel id="hierarchy-panel" title="Hierarchy" icon={ProjectDiagram}>
|
||||
|
|
|
@ -98,7 +98,11 @@ class PropertiesPanelContainer extends Component {
|
|||
};
|
||||
|
||||
onChangeVisible = value => {
|
||||
this.props.editor.setPropertySelected("visible", value);
|
||||
this.props.editor.setPropertySelected("_visible", value);
|
||||
};
|
||||
|
||||
onChangeEnabled = value => {
|
||||
this.props.editor.setPropertySelected("enabled", value);
|
||||
};
|
||||
|
||||
render() {
|
||||
|
@ -140,9 +144,14 @@ class PropertiesPanelContainer extends Component {
|
|||
<NameInputGroupContainer>
|
||||
<NameInputGroup node={activeNode} editor={editor} />
|
||||
{activeNode.nodeName !== "Scene" && (
|
||||
<VisibleInputGroup name="Visible">
|
||||
<BooleanInput value={activeNode.visible} onChange={this.onChangeVisible} />
|
||||
</VisibleInputGroup>
|
||||
<>
|
||||
<VisibleInputGroup name="Visible">
|
||||
<BooleanInput value={activeNode._visible} onChange={this.onChangeVisible} />
|
||||
</VisibleInputGroup>
|
||||
<VisibleInputGroup name="Enabled">
|
||||
<BooleanInput value={activeNode.enabled} onChange={this.onChangeEnabled} />
|
||||
</VisibleInputGroup>
|
||||
</>
|
||||
)}
|
||||
</NameInputGroupContainer>
|
||||
{!disableTransform && <TransformPropertyGroup node={activeNode} editor={editor} />}
|
||||
|
|
|
@ -38,6 +38,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'box-collider',
|
||||
props: {},
|
||||
|
@ -75,6 +81,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'trigger-volume',
|
||||
props: {
|
||||
|
@ -120,6 +132,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'spawner',
|
||||
props: {
|
||||
|
@ -160,6 +178,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'group',
|
||||
props: {},
|
||||
|
@ -197,6 +221,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'video',
|
||||
props: {
|
||||
|
@ -249,6 +279,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'image',
|
||||
props: {
|
||||
|
@ -292,6 +328,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'gltf-model',
|
||||
props: {
|
||||
|
@ -351,6 +393,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'ambient-light',
|
||||
props: {
|
||||
|
@ -391,6 +439,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'spawn-point',
|
||||
props: {},
|
||||
|
@ -428,6 +482,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'gltf-model',
|
||||
props: {
|
||||
|
@ -491,6 +551,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'point-light',
|
||||
props: {
|
||||
|
@ -539,6 +605,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'directional-light',
|
||||
props: {
|
||||
|
@ -586,6 +658,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'spot-light',
|
||||
props: {
|
||||
|
@ -636,6 +714,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'floor-plan',
|
||||
props: {
|
||||
|
@ -684,6 +768,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'image',
|
||||
props: {
|
||||
|
@ -727,6 +817,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'link',
|
||||
props: {
|
||||
|
@ -766,6 +862,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'skybox',
|
||||
props: {
|
||||
|
@ -812,6 +914,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'ground-plane',
|
||||
props: {
|
||||
|
@ -861,6 +969,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'video',
|
||||
props: {
|
||||
|
@ -913,6 +1027,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'spawn-point',
|
||||
props: {},
|
||||
|
@ -950,6 +1070,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'hemisphere-light',
|
||||
props: {
|
||||
|
@ -991,6 +1117,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'group',
|
||||
props: {},
|
||||
|
@ -1079,6 +1211,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'trigger-volume',
|
||||
props: {
|
||||
|
@ -1124,6 +1262,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'point-light',
|
||||
props: {
|
||||
|
@ -1211,6 +1355,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'hemisphere-light',
|
||||
props: {
|
||||
|
@ -1252,6 +1402,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'floor-plan',
|
||||
props: {
|
||||
|
@ -1300,6 +1456,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'ambient-light',
|
||||
props: {
|
||||
|
@ -1340,6 +1502,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'simple-water',
|
||||
props: {
|
||||
|
@ -1400,6 +1568,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'spawn-point',
|
||||
props: {},
|
||||
|
@ -1437,6 +1611,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'kit-piece',
|
||||
props: {
|
||||
|
@ -1502,6 +1682,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'link',
|
||||
props: {
|
||||
|
@ -1541,6 +1727,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'kit-piece',
|
||||
props: {
|
||||
|
@ -1606,6 +1798,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'gltf-model',
|
||||
props: {
|
||||
|
@ -1665,6 +1863,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'particle-emitter',
|
||||
props: {
|
||||
|
@ -1731,6 +1935,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'image',
|
||||
props: {
|
||||
|
@ -1774,6 +1984,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'video',
|
||||
props: {
|
||||
|
@ -1826,6 +2042,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'box-collider',
|
||||
props: {},
|
||||
|
@ -1863,6 +2085,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'spawner',
|
||||
props: {
|
||||
|
@ -1903,6 +2131,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'media-frame',
|
||||
props: {
|
||||
|
@ -1942,6 +2176,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'audio',
|
||||
props: {
|
||||
|
@ -1993,6 +2233,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'directional-light',
|
||||
props: {
|
||||
|
@ -2040,6 +2286,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'ground-plane',
|
||||
props: {
|
||||
|
@ -2089,6 +2341,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'skybox',
|
||||
props: {
|
||||
|
@ -2135,6 +2393,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'group',
|
||||
props: {},
|
||||
|
@ -2172,6 +2436,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'waypoint',
|
||||
props: {
|
||||
|
@ -2251,6 +2521,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'trigger-volume',
|
||||
props: {
|
||||
|
@ -2296,6 +2572,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'point-light',
|
||||
props: {
|
||||
|
@ -2383,6 +2665,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'hemisphere-light',
|
||||
props: {
|
||||
|
@ -2424,6 +2712,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'floor-plan',
|
||||
props: {
|
||||
|
@ -2472,6 +2766,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'ambient-light',
|
||||
props: {
|
||||
|
@ -2512,6 +2812,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'simple-water',
|
||||
props: {
|
||||
|
@ -2572,6 +2878,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'scene-preview-camera',
|
||||
props: {},
|
||||
|
@ -2609,6 +2921,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'spawn-point',
|
||||
props: {},
|
||||
|
@ -2646,6 +2964,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'kit-piece',
|
||||
props: {
|
||||
|
@ -2711,6 +3035,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'link',
|
||||
props: {
|
||||
|
@ -2750,6 +3080,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'kit-piece',
|
||||
props: {
|
||||
|
@ -2815,6 +3151,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'gltf-model',
|
||||
props: {
|
||||
|
@ -2874,6 +3216,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'particle-emitter',
|
||||
props: {
|
||||
|
@ -2940,6 +3288,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'image',
|
||||
props: {
|
||||
|
@ -2983,6 +3337,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'video',
|
||||
props: {
|
||||
|
@ -3035,6 +3395,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'box-collider',
|
||||
props: {},
|
||||
|
@ -3072,6 +3438,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'spawner',
|
||||
props: {
|
||||
|
@ -3112,6 +3484,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'media-frame',
|
||||
props: {
|
||||
|
@ -3151,6 +3529,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'audio',
|
||||
props: {
|
||||
|
@ -3202,6 +3586,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'directional-light',
|
||||
props: {
|
||||
|
@ -3249,6 +3639,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'ground-plane',
|
||||
props: {
|
||||
|
@ -3298,6 +3694,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'skybox',
|
||||
props: {
|
||||
|
@ -3344,6 +3746,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'group',
|
||||
props: {},
|
||||
|
@ -3381,6 +3789,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'waypoint',
|
||||
props: {
|
||||
|
@ -3499,6 +3913,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'floor-plan',
|
||||
props: {
|
||||
|
@ -3547,6 +3967,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'spawn-point',
|
||||
props: {},
|
||||
|
@ -3584,6 +4010,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'gltf-model',
|
||||
props: {
|
||||
|
@ -3643,6 +4075,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'directional-light',
|
||||
props: {
|
||||
|
@ -3690,6 +4128,12 @@ Generated by [AVA](https://avajs.dev).
|
|||
visible: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'editor-settings',
|
||||
props: {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: 'skybox',
|
||||
props: {
|
||||
|
|
Двоичные данные
test/integration/snapshots/Editor.test.js.snap
Двоичные данные
test/integration/snapshots/Editor.test.js.snap
Двоичный файл не отображается.
Загрузка…
Ссылка в новой задаче