R0J0hound's Forum Posts

  • That sprite overlayed over the screen to simulate a flashlight is probably the simplest way.

    With the C3 engine we are pretty limited with what we can do with 3d lighting.

    Hard shadows can be possible as shown by this test. But it may not scale well with more objects.

    construct.net/en/forum/construct-3/general-discussion-7/possible-add-3d-light-172761

    Even with JavaScript there isn’t much you can do to make 3d lighting with c3’s renderer. What was done with most of the 3d stuff in C2 is another engine and renderer separate from construct was stacked on top or underneath your game. That’s what q3d did. Another option was to use constructs renderer in a way it wasn’t intended to be more integrated with the game. Rojo3d did that in c2. In c3 that is much harder, and even if a way is found to do it c3 is constantly getting updates which would require constant updates to keep the solution working.

  • It looks like it should be working. I’m out of ideas with the information provided. I probably am missing something. I’ll defer to whoever else has ideas.

  • You didn’t show the event that adds to bodycount. The rest is unrelated.

    The event should look like this:

    Badguy: hp < 0
    For each badguy
    — destroy badguy
    — add 1 to bodycount

    Without the “for each” there could be cases where more than one bad guy has hp less than 0, but only 1 is added.

    I guess you could do this instead which would also work:

    Badguy: hp < 0
    — destroy badguy
    — add badguy.pickedcount to bodycount
  • There likely can be differences with this and other plugins. The z direction could be positive in the other way. With this you can set the angle with (x,y,z) Euler angles. Other plugins could rotate in a different order like zyx. You can do that with multiple actions

    Set angle to (0,0,z)

    Rotate by (0,y,0)

    Rotate by (x,0,0)

    And like I said before to get the angle it gives it in a 3x3 matrix. You can either convert that with a formula you can find online or you can save the Euler angles to variables.

    The solution you’re after is probably some combination of the above. I’m not going to attempt a solution as this plug-in is mostly self contained and I only made sure it works with a minimal set of other construct features.

  • With this plug-in orientation is as complex or as simple as you like. You can set the orientation with the look at action, or you can rotate incrementally. Like if you like xyz angles you would rotate by x, then y and then z. I was shooting for maximum flexibility and just doing Euler angles wasn’t useful.

    The orient expressions get values from the 3x3 orientation matrix. I guess if you want to get the Euler angles you can either save them in variables as you do the rotations to access later, or there’s probably a formula for it.

  • So here is that 3d dice example revisited. The idea i had for handling collisions between die didn't pan out since the edges would still overlap. I opted for just moving the centers apart which is fine most of the time. There are probably better ways to do it.

    dropbox.com/s/ko3vy6qvc39raoh/3d_dice_v2_simple.c3p

  • There’s an object called vars. Change the width of that.

  • Look at the 3d examples included with construct to get ideas of the kind of 3d you can do. Beyond simple 3d stuff, things become much harder since it’s not a 3d engine so things will have to be done from scratch.

  • It’s in the vars.width variable I think.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Generally the devs don’t give roadmaps, we just find out what they added when releases come out. Sometimes you can see what they currently working on when we see related features being added. That said we haven’t seen many 3d features added in a bit.

    We can make feature requests on the suggestions platform, but features such as full 3d rotations seem to be delayed indefinitely as the dev calls it complicated.

    Anyways we can do some physics on our own. We can use the distort mesh feature to make full 3d rotation, then the rest is math.

    Here is a test I made for one die. I have some ideas to improve it and make it work for multiple dice but it may take a bit to implement when I get a chance.

    construct.net/en/forum/construct-3/how-do-i-8/create-3d-dice-rotation-167723

  • Yes. That link I posted is tested as working.

  • Set the color back to white to make it normal. Something like rgbex(100,100,100) I think.

  • Looks like the camera.angle in the up calculations needed to be negative. Guess it pays to test. 3d math is hard to conceptualize.

    Anyways, did that and it worked but it was jarring when you stopped turning as it snapped back to not tilted. Added some easing to make it more gradual.

    dropbox.com/s/v52y3gxnckqv3nb/mode7like_with_tilting.c3p

  • You’re using wrong values when you set the factor and tilt variables. It should be the same as what I wrote.

    Factor should be set to 1,

    And when setting the tilt you should use diff instead of angular speed.

  • It’s mostly a guide on how to do it.

    You’d add variables named diff, prevAngle, factor and tilt. Then in an every tick event you’d set those variables (a=2 would be the same as “set a to 2”). The up x/y/z are the expressions you’d use in the 3d camera look at action.