Comments (1)
Here is a quick example of an MRE that creates 2 parent nodes ("A" and "B") and 100 child nodes, reparented from A to B in this fashion, and labels each of those children with its parentId value. Though all of the children are parented to B and aligned as expected, their text reveals the defect as a mix of "My parent is A" and "My parent is B".
app.ts:
import * as MRE from '@microsoft/mixed-reality-extension-sdk';
export default class Repro {
constructor(private context: MRE.Context, private baseUrl: string) {
context.onStarted(async () => {
const a = MRE.Actor.Create(context, {
actor: {
name: 'A',
transform: {
app: { position: { x: -0.5, y: 0, z: 0 } }
},
text: {
contents: "A",
height: 0.3
}
}
});
await a.created();
const b = MRE.Actor.Create(context, {
actor: {
name: 'B',
transform: {
app: { position: { x: 0.5, y: 0, z: 0 } }
},
text: {
contents: "B",
height: 0.3
}
}
});
await b.created();
const nodes: MRE.Actor[] = [];
setInterval(() => {
nodes.forEach(node => {
node.text.contents = "My parent is " + node.parent.name
});
}, 0);
for (let i=0; i<100; i++) {
const node = MRE.Actor.Create(context, {
actor: {
name: 'Test Node ' + i,
parentId: a.id,
transform: {
local: { position: { x: 0, y: -0.5 * (i + 1), z: 0 } }
},
text: {
contents: "Initial text",
height: 0.3
}
}
});
node.parent = b;
nodes.push(node);
await node.created();
}
});
}
}
If we were to subsequently try to reparent these nodes back to A, only the ones labelled "My parent is B" would correctly move.
This bug can be reproduced with only a single child node, but is intermittent due to timing. Using 100 nodes helps illustrates the random behavior.
from mixed-reality-extension-sdk.
Related Issues (20)
- GPU Perf: Text mesh pro elements are not batching
- GPU Perf: reuse materials/textures across apps HOT 1
- GPU Perf: minimize drawcalls from identical materials with different colors. HOT 1
- Deleted animations cause exceptions when MRE is unloaded
- Vectors and Quaternions should be immutable
- It's difficult to adjust the app scale of an actor
- Object grab required for synchronization
- Updating actor transforms in a grab end callback has unpredictable results
- Creating an actor under a disabled parent results in unpredictable behavior
- Execute WebAssembly HOT 1
- Add functionality so animate can control media parameters
- ability to control shader parameters of existing object? (feature request) HOT 1
- Transform updates not propagating for attachments when using subscription 'transform' HOT 1
- Rigidbody Addforce or Velocity no longer working? HOT 1
- Hello World sample doesn't work HOT 1
- VideoStream volume options stopped working HOT 2
- Feature-Request: Add Animator Controller support in SDK
- Changes in the code (MRE) are not reflected in Altspace VR HOT 1
- Live streaming not creating video streaming assets
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mixed-reality-extension-sdk.