QuaziGNRLnose's Recent Forum Activity

  • Hi, I don't think I made an example for raycasting.

    It's pretty straightforward,

    Add a raycaster.

    add something like an always, then add some action for the raycaster.

    -add a set position action for the raycaster, this sets the raycaster origin location to some xyz in world space.

    -add a set direction action for the raycaster, this sets the raycaster either towards a location, or in a xyz vector direction, depending on the actions

    next add a condition, either Raycast, loop all or Raycast, pick 1st.

    -select a Q3D model, and set the raycaster step size (world space units) and the raycaster near/far clipping values (the raycaster will only intersect objects in the given range).

    Raycast loop all will act like a loop, calling the events in the loop and acting sort of like a for each picking each object that was intersected.

    Raycast pick 1st will simply pick the object in the first intersection.

    When an intersection occurs, you will know because the condition returned true so the associated actions fired. if you just want to detect collisions like this just use a dummy variable and set it to 0 before checking, and 1 in the raycast condition. That way each frame you'll know if you had an intersection or not.

    Last important point. Whenever an object is picked by the raycast conditions, the raycaster expressions are updated with relevant information about the raycast. Stuff like intersection location in worldspace, the normal of the face that was intersected (in world space), intersection depth, etc.

    hope this helps.

    If you want to do raycasting from a mouse position (i.e. to select objects with the mouse), you can use the Q3D viewport. The workflow is essentially identical to what i just described except you use the "projection" conditions. These let you give the mouse x/y position and handles all the tricky projection stuff. three.js might have a bug with this though if you're using shadows, I can't remember.

  • Our game TowerClimb (http://store.steampowered.com/app/396640/TowerClimb/) is on Steam. Although it's made with Construct Classic (Not C2). This means its Windows only.

  • You need to add Q3D master first.

  • fuego

    cool! Its fun to zoom around

    cjbruce

    I like it! I did a lot of highschool robotics and had to be driver a lot, so I think its a great idea to make a little "training room"

  • Hmm, weird. The physics objects don't like being re-positioned/rotated outside of torques and forces / velocity because this forces the engine to do extra updates and triggers a lot of things behind the scenes. I'm not entirely sure why objects aren't rotating though, it seems to work for me. Can u send a .capx?

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • cjbruce

    Parenting should work fine, you just have to be careful with the transformations because it gets complicated! There's no need to manually shift things like that and it is quite expensive. I see you've fixed it already though

  • cjbruce

    I suggest doing away with the physics based wheels entirely, and making the cars spheres/blocks instead. This should significantly boost performance and is how most video-game cars are implemented. Im assuming you made the wheels invisible because they were acting strangely? I realize this is probably a big change to make but my experience tells me its the best way to go.

  • cjbruce

    The issue seems to be with the use of physics more than with the rendering of objects. A scene without physics should take many many objects before it slows on any okay CPU.

    It's probably a better idea to fake the movement by considering the entire car a single rigidbody and applying torques to that to emulate wheels. Using hinges on cylinders will lead to trouble getting a good contact patch and make the controls poor, as well as open up the possibility of wheels getting out of alignment. This will also be much less costly

  • fuego

    Q3D Wasn't really designed with nested objects in .obj's in mind, Since this doesn't really fit with the workflow of Construct's picking system. Really you should have one Q3DModel for every static geometry. There's kind of no point working without constructs picking inside construct, and the advantage of using Q3D+C2 over javascript alone quickly disappears with lots of added overhead. Some Q3D things are redesigned from three.js to give speedup / avoid bad practices that would quickly ruin performance. I

    cjbruce

    What do you mean by instancing?

  • DKinGer

    You should have gotten an email when you purchased the plugins, where you can download the files from. You unzip the download and follow : https://www.scirra.com/manual/69/plugins

  • DKinGer

    Did you download the plugin files and install them in the plugin and behavior folders (the standard procedure for any third party plugins)

  • Check the manual. It doesn't cover all the capabilities but it should familiarize you with basics.

    https://www.dropbox.com/s/vpn0mbh4m7lo9 ... .docx?dl=0

QuaziGNRLnose's avatar

QuaziGNRLnose

Member since 2 Aug, 2008

Twitter
QuaziGNRLnose has 5 followers

Trophy Case

  • 16-Year Club
  • Email Verified

Progress

17/44
How to earn trophies