We use cookies to ensure that we give you the best experience on our website. If you continue to use this site we will assume that you are happy with it.

Alexander Kovelenov

Forum Replies Created

Viewing 15 posts - 1 through 15 (of 1,393 total)
  • Author
    Posts
  • in reply to: Verge3D 4.9 pre1 available! #80194

    Hi Thomas,
    We upgraded the library that handles raycasting and closest point calculations so that code snippet might not work as expected in 4.8. I’d suggest upgrading to 4.9 pre1 for best results.

    Soft8Soft Tech Chief
    X | FB | LinkedIn

    in reply to: Verge3D 4.9 pre1 available! #80105

    If that’s something which could be roughly build with puzzles, the type of navigation used in the VR Demo would greatly benefit from this.

    Hi Thomas,
    Here is how we do it. You can use this snippet as a basis for your own puzzle or with “exec script”:

    
    _handleCollisions() {
        if (!this._enableCollisions || this.collisionMeshes.length == 0)
            return;
    
        this._raycaster.ray.origin.copy(this.object.position);
        this._raycaster.far = this.storyHeight;
    
        const intersections = this._raycaster.intersectObjects(this.collisionMeshes, false);
        if (intersections.length > 0) {
    
            const intersection = intersections[0];
            this.object.position.y = intersection.point.y + this.gazeLevel;
            this._onCollisionMesh = true;
    
        } else if (this._onCollisionMesh) {
    
            let minDistance = Infinity;
    
            for (const mesh of this.collisionMeshes) {
                if (!mesh.geometry.boundsTree) {
                    console.warn('v3d.FirstPersonControls: no bounding tree found on ' + mesh.name);
                    continue;
                }
    
                this._toMeshSpaceMatrix.copy(mesh.matrixWorld).invert();
    
                this._lastIntersection.copy(this.object.position);
                this._lastIntersection.y -= this.gazeLevel;
                this._lastIntersection.applyMatrix4(this._toMeshSpaceMatrix);
    
                const target = this._ppTarget;
                mesh.geometry.boundsTree.closestPointToPoint(this._lastIntersection, target);
    
                if (target.distance < minDistance) {
                    this._nearestPoint.copy(target.point);
                    this._nearestPoint.applyMatrix4(mesh.matrixWorld);
                    minDistance = target.distance;
                }
            }
    
            if (isFinite(minDistance)) {
                this.object.position.copy(this._nearestPoint);
                this.object.position.y += this.gazeLevel;
            } else {
                // NOTE: fallback if no bounding trees present on collision meshes
                this.object.position.copy(this._lastPosition);
            }
        }
    }
    

    This new code is from Verge3D preview that uses closestPointToPoint() method to push the camera back to the collision map. You’ll need to modify it to handle the “camera control object” instead.

    Soft8Soft Tech Chief
    X | FB | LinkedIn

    in reply to: Add Parameters – iframe #80023

    Hi,

    the “open web page – replace url” puzzle does not operate on the URL of the parent page (so it could not be used inside iframed apps). One possible workaround is to use the “exec script” as follows:

    Soft8Soft Tech Chief
    X | FB | LinkedIn

    Thank you for bringing this up. We’ve already uploaded the fix to WordPress repository :good:

    Soft8Soft Tech Chief
    X | FB | LinkedIn

    in reply to: Texture issue. #79733

    Hi,
    unfortunately the Musgrave node was dropped in Blender 4.1 +. Please use the regular noise texture as a replacement. See here for more info.

    Soft8Soft Tech Chief
    X | FB | LinkedIn

    in reply to: Verge3D for WordPress Texture Loading Issue #79722

    I see no critical errors in the console you provided. I believe there is a logical issue in the puzzles scenario itself. There are some hints that might help in debugging it:

    1. Use more print to console to find our the possible reason of this misbehavior.

    2. Temporary disable blocks that are not relevant to this particular functionality. This will help you in narrowing it down.

    Soft8Soft Tech Chief
    X | FB | LinkedIn

    You might try using the Chrome Developer Tools to find that element and get it by its class… etc manually, by executing the document.querySelector(" ... ") right in the browser console.

    Regarding the upload fail, apparently there is one file that has invalid MIME type (extension). You might need to review your app folder to find it and add its MIME to the plugin settings.

    Soft8Soft Tech Chief
    X | FB | LinkedIn

    Hi,
    There are no specific puzzles required for making it work. The most probable cause of this misbehavior might be specifying a wrong value for the “query selector” puzzle, hence it does not return anything. You might use the print to console puzzle to verify that the proper element is returned by the query selector.

    Soft8Soft Tech Chief
    X | FB | LinkedIn

    in reply to: Verge3D for WordPress Texture Loading Issue #79658

    Strange thing, that I don’t see that message :scratch: Please share the snippet of Puzzles logic that handles the “paisley” switching, perhaps there is something with that code.

    Soft8Soft Tech Chief
    X | FB | LinkedIn

    in reply to: About Bones scaling #79657

    Hi,
    Unfortunately, it’s not possible to disable the propagation of scaling through the bone hierarchy in Verge3D. You might try to create additional “scalable” bones to address this problem.

    Soft8Soft Tech Chief
    X | FB | LinkedIn

    in reply to: Verge3D for WordPress Texture Loading Issue #79639

    Hi,
    These textures are quite heavy, perhaps some timeout happens during the load. Try to disable Texture Compression for them temporary or reduce their size to see if it works.

    Soft8Soft Tech Chief
    X | FB | LinkedIn

    in reply to: Moving Objects in Augmented Reality Project #79638

    Hi,
    Sure, you can modify the source puzzles of this app a to make multiple objects work. Just use some variable as an “active object” and move that instead of directly referencing the object by the name.

    Soft8Soft Tech Chief
    X | FB | LinkedIn

    Hi, this appears to be a correct behavior. The “inverted” checker inverts the 2D cursor coordinates, not the final vector returned by the puzzle, hence it has no meaning when “from mouse/touch” is disabled (basically in that mode the coords are [0, 0] – the center of the screen).

    Soft8Soft Tech Chief
    X | FB | LinkedIn

    in reply to: Javascript variables #79451

    Hi, the code in the “exec script” puzzle does not seem to be a valid JavaScript… Are you trying to get some value of an HTML element?

    Soft8Soft Tech Chief
    X | FB | LinkedIn

    in reply to: Reroute in Blender material exports incorrectly #79450

    Hi,
    Thanks for reporting, we’ll try to fix it in the upcoming Verge3D preview build :good:

    Soft8Soft Tech Chief
    X | FB | LinkedIn

Viewing 15 posts - 1 through 15 (of 1,393 total)