Great tutorial! Why do you use a 300x2 noise matrix and the jit.concat trick instead of just using a 300x300 noise matrix (with offset changing through x or y axis instead of z) as a z plane for your mesh ?
@AmazingMaxStuff4 жыл бұрын
Great question! The answer is: to generate a smaller matrix through jit.bfg. A 300x300 matrix in fractal.hetero would be pretty costly for the CPU. In this way we can spare power and have it faster. Anyway yes, it could be possible!
@AmazingMaxStuff4 жыл бұрын
Plus, if you try this yourself, you will see that the effect is slightly different. It will be jittery because the vertices pass smoothly from one value to the other. So will be more like a sea than like a steady terrain moving.
@TRUCOFIL4 жыл бұрын
@@AmazingMaxStuff I tried both methods and yours (concatenating a 1D matrix) is about 2-3fps faster than directly generating a square matrix (running on a i7 9700). The gap is not as big as I thought! Regarding the results, you can get very similar looking by changing the details and scale parameters. I also feel more comfortable with generating a square matrix as it is a bit simpler to control the scrolling speed and the size of the mesh. I keep both implementations in my patch and I'll see how it perform after a few additions!
@domantaspuras35533 жыл бұрын
How do you guys move around in the screen itself? I mean the "game" object. How do you go up or down?
@AmazingMaxStuff3 жыл бұрын
"wasdqz" keys when having a camera and a jit.anim.drive connected to it
@dariusfeier70032 жыл бұрын
for some reason the jit.world display is not working for me? Is there anyway to have the display show up on jit.window? Thank you!
@AmazingMaxStuff2 жыл бұрын
Hey! Either you create a jit.world (that includes a jit.window), or you use the old system of jit.window + jit.gl.render (do not recommend).
@dariusfeier70032 жыл бұрын
@@AmazingMaxStuff Thank you, this is what is inside the object box currently as you had in the video: jit.world game @fsaa 1 @size 320 240 @windowposition 1500 100 @floating 1 @erase_color 0 0 0 1 @fsmenubar 0 @fps 120. After which part should I include the jit.window? Thank you so much for your help
@AmazingMaxStuff2 жыл бұрын
@@dariusfeier7003 hey! the jit.window is automatically created. Probably you don't see it because is too far right on the screen. Modify the windowposition attribute to 100 100
@dariusfeier70032 жыл бұрын
@@AmazingMaxStuff Tbank got it! Is there a way to change the movement from.w a s d q z to a MIDI controller. And where can I change the code to do this?
@kozyslaw13 жыл бұрын
I did everything just like you and my camera controls seem to be going weird.. what can be the problem?
@AmazingMaxStuff3 жыл бұрын
Hey, what do you mean weird?
@ayankoko2 жыл бұрын
@@AmazingMaxStuff hi just did it also can't keep a good view control with the keys a q s d z w
@faycarsons2 жыл бұрын
any ideas re: making this audio reactive? Im an absolute beginner w jit(tho not w coding/genart) if that helps lol
@AmazingMaxStuff2 жыл бұрын
Hey! You could for example tie the speed of the run with the amplitude of the audio
@mannibimmel092 жыл бұрын
Thank you. On openGL3 jit.concat / jit.matrix loop crashes max 8.3 on mac
@AmazingMaxStuff2 жыл бұрын
Hey! Are you using my patch or did you recreate it from the video? In the second case make sure that all the attributes and arguments in the objects are set correctly. Just tried on my Mac doesn't seem to crash
@mannibimmel092 жыл бұрын
@@AmazingMaxStuff hey! thanks for your answer. i followed your video so maybe theres a typo value !"§ i´ll try it tommorow). on gl2 it works fine
@mannibimmel092 жыл бұрын
fyi .still crashes with your patch from patreon. maybe its apple m1 or max version thing or combination.
@MicheleZaccagnini4 жыл бұрын
Since you are using jit.glmaterial would it be more efficient to use jit.gl.bfg as a heightmap?
@AmazingMaxStuff4 жыл бұрын
Hey Michele! In that case you would have to calculate the normals yourself, since @auto_normals would not work, as far as I know. In your experiments do you get a correct lighting? If that's the case I would definitely like to see that. It's definitely an option though, I will explore it in a future tutorial!
@MicheleZaccagnini4 жыл бұрын
@@AmazingMaxStuff I think [@heightmap_mode vtf] should take care of the normals, while [vtf_normals] needs a normal map, which can be calculated from the luma values. I haven't tried it though....
@AmazingMaxStuff4 жыл бұрын
vtf_normals should regenerate the normals, as per help file description. In my experience it does a poor job at that, but maybe I'm using it in the incorrect way. If you find out please let me know!
@AmazingMaxStuff4 жыл бұрын
This is what the jit.gl.material object does with @vtf_normals: vec3 filter_normal(vec2 uv , float texelsize , sampler2D tex ) { float h0 = texture(tex, uv + texelsize * vec2(0, -1)).r; float h1 = texture(tex, uv + texelsize * vec2(-1, 0)).r; float h2 = texture(tex, uv + texelsize * vec2(1, 0)).r; float h3 = texture(tex, uv + texelsize * vec2(0, 1)).r; vec2 step = vec2(1.0, 0.0); vec3 va = normalize(vec3(step.xy, h1 - h0)); vec3 vb = normalize(vec3(step.yx, h3 - h2)); return cross(va, vb); } So it takes the derivative of the vertex position and uses it as a normal, which should work. For some reason the light doesn't look so good though
@MicheleZaccagnini4 жыл бұрын
@@AmazingMaxStuff that's right it's the other way around. Yeah you probably right I might try it just for fun...thanks Federico!