Great Tutorials and Great video ! Thank you so much for your hard work ! If Anyone is interested, I found (at my very humble level) a simple way to make the ball mesh rotate more "naturally" relative to the player speed . I don't know if BornCG will tackle that is a later video (if so I'll remove this comment). Basically you want to remove the lines associated to the rotation and just place a the top of the _physics_process(delta) function two line that associates the rotation with the velocity associated. In plain code you would have : $MeshInstance.rotate_z(deg2rad(-velocity.x)) $MeshInstance.rotate_x(deg2rad(velocity.z)) That way the ball will rotate at the same speed as the body is moving, so when you stop and the inertia of the lerp keeps the ball moving, it will keep on rotating slower and slower until the body stops. Hopes it helps someone ! Cheers !!! Cheers !
@bellobods3 жыл бұрын
Thank you so much!
@mikewest56705 жыл бұрын
Write $MeshInstance.rotate_z(deg2rad(-velocity.x)) and $MeshInstance.rotate_x(deg2rad(velocity.z)) at the end of each else statement
@imquit15084 жыл бұрын
thx
@vincernio4 жыл бұрын
Thanks! Was sitting here thinking up all sorts of complex ways I could handle matching the rotation on the lerp, but I never even considered this simple and efficient solution.
@medicinaytalojacs6584 жыл бұрын
Not perfect... but good enough. Thanks!
@macgyvermankirk5724 жыл бұрын
I was trying to do the same sort of thing by messing around with lerp, it didn't work. Thanks!
@TubeJosch4 жыл бұрын
$MeshInstance.rotate_z(deg2rad(-ROTSPEED * velocity.x/SPEED)) and $MeshInstance.rotate_x(deg2rad(ROTSPEED * velocity.z/SPEED)) should be ideal
@noiJadisCailleach5 жыл бұрын
Ohhh!! Finally 3d tutorials for godot! Found this on reddit a couple seconds ago. Upvoted there too. *Instant subscribe, bell notification.* Imma fully watch this after i finish this current tutorial playlist i'm on.
@DiiaBloodyRain4 жыл бұрын
wow you are really Committing to godot good luck
@Zevonthethompsongun4 жыл бұрын
What was the other playlist you learned a lot from?
@5Puff4 жыл бұрын
Before: Aw man godot is too hard, I can't even master 2d! After this: *I am god*
@arg38824 жыл бұрын
loll same
@jbanimations84753 жыл бұрын
@@arg3882 Yeah those tutorials kickass.
@HiddenWindshield4 жыл бұрын
Just FYI: You don't need a separate constant for the speed of rotation. Since the ball is 1 unit in radius, it will roll 1 radian every time it moves 1 unit. So you can just base the rotation off the velocity vector. (Although one complication is that move_and_slide uses the delta variable automatically, but the rotate methods don't, so you have to do it yourself.) Just add: $MeshInstance.rotate_z(-velocity.x * delta) $MeshInstance.rotate_x(velocity.z * delta) to the bottom of your script and the rotation will always work out perfectly, no matter how you change your speed or whatever.
@GaryParkin2 жыл бұрын
Now that's way cool. It also fixes the ball skidding when it is stopping in the lerp. Thank you. I'll use this.
@marta_na_moto Жыл бұрын
You're my hero. As there is this lerp in the video that author conveniently skipped. I searched thorugh the docs to find how to extract current location from the mesh while your solution is just so idiotically simple.. thanks a looot
@CalmProto Жыл бұрын
Very helpful, thank you. In Godot 4.0.3 it is now: $MeshInstance3D.rotate_z(-velocity.x * delta) $MeshInstance3D.rotate_x(velocity.z * delta)
@ceasnov4 жыл бұрын
This channel is seriously underrated.
@jlslakshmi88163 жыл бұрын
agreed
@HiveHanging3 жыл бұрын
Totally understand completely agree
@infectia19653 жыл бұрын
Yea he teaches so well !!!
@joel24303 жыл бұрын
Great tutorial! :) Highly recommended. I was a bit annoyed that the diagonal speed was higher, so added these lines at the end of the function func _physics_process(delta): if ((Input.is_action_pressed("ui_up") or Input.is_action_pressed("ui_down")) and (Input.is_action_pressed("ui_left") or Input.is_action_pressed("ui_right"))): velocity = velocity.normalized() velocity *= SPEED move_and_slide(velocity)
@mikewest56705 жыл бұрын
The more I learn about Godot the more I'm impressed about how dynamic and organized it is.
@MikevomMars3 жыл бұрын
Yeah, but simply importing files seems to be a headache 😐
@GaryParkin2 жыл бұрын
@@MikevomMars lol, you should try Unreal Engine. Nothing imports right without serous thought. And the skeletons import tiny.
@_perovskia Жыл бұрын
Whenever I watch tutorial videos, I always expect to learn one thing simply in the scope of the tutorial. However with these tutorials, they are PERFECTLY on point with what I plan doing with Godot to the point that it becomes spooky! This video is 3+ years old and it still perfectly strikes what I need, thank you!
@dailydoseofeverything71419 ай бұрын
Right click on playerball gltf and click new inherited scene so you can save it
@yakoublat025 жыл бұрын
Great series ! hope in future to get deeper into game creation in GODOT of curse !
@marc-alexandrelaroche66325 жыл бұрын
*course
@nexus_linky4 жыл бұрын
This is how my script ended up: ``` extends KinematicBody """ Steve é a bola mais fofa do universo CG. :3 """ export var speed: float = 5 export var accelaration: float = .1 var velocity := Vector3.ZERO func _ready() -> void: print("Hello 3D Wolrd!") func _physics_process(_delta: float) -> void: var strenght := get_input_axis() * speed var motion := Vector2( lerp(velocity.x, strenght.x, accelaration), lerp(velocity.z, strenght.y, accelaration) ) velocity.x = motion.x velocity.z = motion.y $MeshInstance.rotate_z(deg2rad(-motion.x)) $MeshInstance.rotate_x(deg2rad(motion.y)) velocity = move_and_slide(velocity) func get_input_axis() -> Vector2: """ Retorna o input do usuário em forma de uma direção bidimensional. """ return Vector2( Input.get_action_strength("move_right") - Input.get_action_strength("move_left"), Input.get_action_strength("move_down") - Input.get_action_strength("move_up") ).normalized() ```
@5Puff4 жыл бұрын
r/Ihadastroke
@heckyes4 жыл бұрын
Can you teach me everything from now on?
@JTCF2 жыл бұрын
One cool thing to do by yourself is try to make rotation depend on speed. Some math gets involed and it's pretty interesting. And it looks awesome, especially since we're using lerp (which I also used for acceleration, not just stopping)
@Speed-TV Жыл бұрын
I have a question, so what do you do with all of that extra stuff you created like the playerball scene and the stuff in the imports folder
@bryanmarrrty36745 жыл бұрын
You're very good at teaching!! Thank you very much for these tutorials. They've been very helpful on guiding me how to use Godot. I played around by myself and led me to this: Almost everything's the same except that the root node of my ball scene is a RigidBody instead of a KinematicBody and the shape of its CollisionShape is a SphereShape. As a result, the behaviour of the ball looked more natural and the ball will fall off the edge rather than floating mid-air. Here's my script: ``` extends RigidBody const movementSpeed = 25 func _ready(): pass func _physics_process(delta): var xSpeed = Input.get_action_strength("ui_right") - Input.get_action_strength("ui_left") var zSpeed = Input.get_action_strength("ui_down") - Input.get_action_strength("ui_up") var movementVec = Vector3(xSpeed, 0, zSpeed) * movementSpeed add_central_force(movementVec) ```
@andreemcaldas3 жыл бұрын
At 25:20, it is called "right-hand rule": en.wikipedia.org/wiki/Right-hand_rule#A_rotating_body Your thumb points along "axis z", because you are using "rotate_z". Also, as @HiddenWindshield points out, radians is very good! That's because if you multiply "angle in radians" by "sphere radius", you have the amount the sphere has rolled on the ground. Therefore, the angle in radians would be (with the appropriate sign) (delta * speed) / radius.
@ekaterinavalinakova26434 жыл бұрын
One thing I've noticed is the mesh of the sphere suddenly stops spinning when you let go of the arrow keys. If you don't want it to suddenly stop, but gradually slow down just as the KinematicBody does, in both "else:" areas of the script, add $MeshInstance.rotate_z(deg2rad(-velocity.x)) and see if that works. else: velocity.x = lerp(velocity.x,0,0.12) $MeshInstance.rotate_z(deg2rad(-velocity.x)) else: velocity.z = lerp(velocity.z,0,0.12) $MeshInstance.rotate_x(velocity.z*delta) I found out that velocity.z*delta also appears to work.
@sergiosuarez31204 жыл бұрын
Dude thank you for making these! :) you teach things in a super clear way. Looking to get into this engine and your tutorials are way better than many of the paid ones, so least i can do is subscribe and like every video! Keep up the great work.
@LiveDimi2 жыл бұрын
One Question, when I add the Material on the Floor (The Colour) and play the Scene, I get a flickering Floor. Does anyone know what causes this? Thanks in advance :)
@dedhead93225 жыл бұрын
Another great tutorial! I did come across a very easy fix for the diagonal speed issue. If you normalize the speed it solves the problem. I posted it in my comment on the last video. This is my code after this tutorial: extends KinematicBody export var SPEED = 10 export var ROTSPEED = 8.5 func _ready(): pass func _physics_process(delta): var velocity = Vector3(0,0,0) if Input.is_action_pressed("ui_right"): velocity.x += 1 $MeshInstance.rotate_z(deg2rad(-ROTSPEED)) if Input.is_action_pressed("ui_left"): velocity.x -= 1 $MeshInstance.rotate_z(deg2rad(ROTSPEED)) if Input.is_action_pressed("ui_up"): velocity.z -= 1 $MeshInstance.rotate_x(deg2rad(-ROTSPEED)) if Input.is_action_pressed("ui_down"): velocity.z += 1 $MeshInstance.rotate_x(deg2rad(ROTSPEED)) if velocity.length() > 0: velocity = velocity.normalized() * SPEED move_and_slide(velocity)
@sorayabraz4 жыл бұрын
Thank you so much! Your tip is so usefull, it should be at the beginning of the comments!! This issue almost drove me crazy, haha!
@ErikScott1285 жыл бұрын
Alternative code to implement the rotation: if velocity.length() > 0.01: # Use a small value here rather than zero because of floating-point nonsense. var ang_vel = -velocity.length() var ang_delta = ang_vel * delta var rot_axis = velocity.cross(Vector3(0,1,0)).normalized() $MeshInstance.rotate(rot_axis, ang_delta) $MeshInstance.orthonormalize() Line-by-line explanation: We don't want to calculate rotation if the velocity is 0, or very close to zero, so we wrap all this in an if statement. This is because some of the math falls apart if we have a vector with magnitude 0, or very close to 0. The angular speed in radians/sec is just going to be the linear velocity divided by the radius of the ball. The ball has a radius of 1, so it's just the linear velocity. I had to throw in a negative sign because of the order in which I took the cross product. Because we're changing the angle, not the angular rate, we need to get the change in angle associated with the velocity for one step. We can use the delta variable here, which is the physics time step. This is line here is simple numerical integration. We can find the axis of rotation as the cross product of the linear velocity and the "up" (y-axis) vector (this should actually be the contact normal, but we're only rolling on a flat plane here) We can now tell the mesh instance to rotate about that vector by the change in angle calculated earlier. Lastly, we othonormalize the transform matrix, which is good to do periodically.
@voxeledphoton5 жыл бұрын
Awesome! I was doing something kinda similar. Great explanations, and thanks for letting me know about the floating-point nonsense! This is what I had: func _physics_process(delta): hdir = int(Input.is_action_pressed("ui_right")) - int(Input.is_action_pressed("ui_left")) vdir = int(Input.is_action_pressed("ui_down")) - int(Input.is_action_pressed("ui_up")) velocity += (Vector3(hdir*SPEED,0,vdir*SPEED) - velocity)/10 if velocity!=Vector3.ZERO: $MeshInstance.rotate( Vector3.direction_to(Vector3(velocity.z,velocity.y,-velocity.x)), Vector3.ZERO.distance_to(velocity)/SPEED/PI/DIAMETER ) move_and_slide(velocity)
@thegamingforge83474 жыл бұрын
make more tutorials for 3d games in godot
@Mark734 жыл бұрын
What works perfectly is to feed your velocity into the deg2rad function (flip the sign for rotate_z). Basically after your two if blocks do: $MeshInstance.rotate_z(deg2rad(-velocity.x)) $MeshInstance.rotate_x(deg2rad(velocity.z))
@Speed-TV Жыл бұрын
I noticed how when you stop moving the ball slows down but it doesn't keep rotating. How do you change that
@segsfault2 жыл бұрын
Instead of calling deg2rad function everytime your want to rotate, you can make a constant on the top and then use that. example: const playerRotation = deg2rad(5) And then here your can tweak it accordingly and computer will not have to calculate the value everytime
@GaryParkin2 жыл бұрын
So a constant can be a function? That's cool.
@segsfault2 жыл бұрын
@@GaryParkin no, deg2rad converts the given value in degree to radian and returns it, so what we're doing is we're converting 5 degree to radian and using it later, now since 5 degree to radian is always the same we just separate it out so we don't need to calculate the same thing again.
@GaryParkin2 жыл бұрын
@@segsfault OH! I get it. The function runs once and stores the result in the constant. Still pretty neat. Thank you for the clarification Aditya.
@digbythedog24652 жыл бұрын
This is a really good tutorial series so far, even years later
@HalValla015 жыл бұрын
Title: Godot 3.1 [insert other stuff here] First segment of video: Teaching us basic texturing in Blender *I love you*
@MncMarcos2 жыл бұрын
I am very picky with little details haha, so, if you are like me, and you are annoyed by the sphere texture not rotating during the lerp function (the friction), i improvised this: velocity.x = lerp(velocity.x,0,0.1) $MeshInstance.rotate.z(deg2rad(lerp(-velocity.x,0,0.1))) and velocity.z = lerp(velocity.z,0,0.1) $MeshInstance.rotate_x(deg2rad(lerp(velocity.z,0,0.1)))
@Galaxia532 жыл бұрын
Yes it worked! Although because you wrote down .z instead of _z it didn't work for a while and I wondered why.
@cosmicquestion91843 жыл бұрын
You wanna make a game, learn GODOT! You wanna use GODOT, learn Blender! You wanna use Blender, learn Gimp! WHERE DOES IT END!?!?!?
@BurnLikeAFlame Жыл бұрын
You wanna use any of these programs, learn how to navigate your operating system!
@hick3y15 жыл бұрын
So far so good, i have my ball rotating, i was getting tilted that the rolling animation stopped the moment i let go of a direction while the ball still moved during the lerp, so i made a lerp for the rolling too, if anyone else wants to do this, then make 2 variables named ROT_UD and ROT_LR, these are for up/down and left/right. set them to 0, then set both to 0 when you are holding both left and right (same for up and down) now set them accordingly to the direction (while holding left set to 5, while holding right set to -5 etc) then finally underneath velocity lerp add these velocity.x = lerp (velocity.x,0,0.1) ROT_LR = lerp (ROT_LR,0,0.08) $MeshInstance.rotate_z(deg2rad(ROT_LR)) duplicate this to up and down like you did with the otherstuff and that should work like mine :) hope this helps
@mikewest56705 жыл бұрын
i just wrote $MeshInstance.rotate_z(deg2rad(-velocity.x)) in my else statement.... it looks pretty damn close to accurate
@t.theonian244 жыл бұрын
Could you post the actual code? Mine still stops instantly, so I'm obviously doing something wrong... It does rotate correctly, though.
@bankrupt25552 жыл бұрын
thanks i was trying this but couldn't get to work. yours did
@menacheryproductions83534 жыл бұрын
when i imported the ball,it had changed yellow to black as i moved. can anyone pls reply?
@nsovomabasa50144 жыл бұрын
Scenario 1: I've seen that happens a lot when I tried to use intel integrated graphics to save some battery juice on my laptop. Changing your graphics api to ES2 seems to work. Scenario 2: Trying to save into gltf file seems to be problematic, so instead use "Save As" to save the gltf file as a scene then everything should work fine
@TanimZunaedAlam3 жыл бұрын
@@nsovomabasa5014 Thanks! Been trying to figure what might have caused the issue, whatever I tired, didn't work. Scenario 1 worked for me
@sabinsunny6555 жыл бұрын
Really nice tutorial, very well explained , thanks four your help :)
@varin64942 жыл бұрын
Great tutorials, very clear and concise explanations. Thank you so much.
@M2007U5 жыл бұрын
Xr.Shim : "I tried to make my own model in blender, and imported in to godot, but why all the information for colors are gone ?"
@bob2bucks513 Жыл бұрын
i learned alot but idk how im gonna remember all of this
@mustafanesma51662 жыл бұрын
just keep it going man you'r the best ✌️
@anindyaroythetechmaster4 жыл бұрын
20:14 Just click on the output button to collapse it
@agusmulyana9294 жыл бұрын
the game was stoped when i try to rotate it why ?
@spaghettiman5123 жыл бұрын
Hi im sorry but after loading in the playerball tres file my steve just kept blinking black then normal even though it moves just normally for some reason, does anyone have the same problem?
@TechWampus3 жыл бұрын
i have the same problem, and i can't find a solution :(
@taariqmartin7743 Жыл бұрын
Please keep it up I love ur video's I'm never lost
@siddharth6174 жыл бұрын
You're a Great Teacher !! You make these topics Effortless to understand...
@thedrakko39515 ай бұрын
Just a note to make the code better: if u add in the else statement $MeshInstance3D.rotate_z(deg_to_rad(-velocity.x)) and $MeshInstance3D.rotate_x(deg_to_rad(velocity.z)) respectively, it will make the ball keep rotating with the velocity that was assignated with the lerp function/method.
@_xeere5 жыл бұрын
the rotation in degrees would just be 360 x distance moved/(pi x diameter); you don't need to eye it
@mikewest56705 жыл бұрын
pft.... math...
@JayeshSarvaiya3 жыл бұрын
You have created a really helpful series of tutorials, I truly appreciate the time engaged, effort taken and planning done for creating these videos, thanks for making them. 👍🙂
@scigama712 жыл бұрын
this is the best godot course ive taken :)
@adaline_exports3 жыл бұрын
You can map rotation directly to the velocity of the player with rotate_z(deg2rad(velocity.x))
@ZivFox2 жыл бұрын
ok just decided to start learning Godot, (I have almost no coding experience aside from this series) This is the first tutorial I started following. I wasn't happy with how the ball rolled by the end of the video so I was thinking of a way to tie the mesh rotation to the speed and direction of the ball and I came up with this. if velocity.x != 0: $MeshInstance.rotate_z(deg2rad(velocity.x*-.7)) if velocity.z != 0: $MeshInstance.rotate_x(deg2rad(velocity.z*.7)) and it looks great! the mesh rotates with the speed and direction of the ball. I'm sure there is a better way to do this but I'm just happy I came up with it on my own.
@AntonioNoack5 жыл бұрын
25:50 *but what you should do is appreciating radians ;), because we just can use them for such thing: we rotate by speed * delta / radius (radius = 1, speed was 6, the result is 5.73° at 60fps)
@boriswilsoncreations5 жыл бұрын
2:13 I'm in the future! Yay! \o/
@richardeadon63964 жыл бұрын
I'm so glad I found this series and this channel. Godot and Blender 2.8 look like what I've always wanted as a game dev and I'm learning them effortlessly thanks to you. You're a great teacher. Also 24:05 "in some countries" lol burn
@MidnightTsuki4 жыл бұрын
Ball rotates till a complete stop with this. The rotation speed is also affected by the movement speed. if Input.is_action_pressed("ui_right") and Input.is_action_pressed("ui_left"): velocity.x = 0; elif Input.is_action_pressed("ui_right"): velocity.x = SPEED; # $MeshInstance.rotate_z(deg2rad(-8)); elif Input.is_action_pressed("ui_left"): velocity.x = -SPEED; else: velocity.x = lerp(velocity.x, 0, 0.1); if Input.is_action_pressed("ui_up") and Input.is_action_pressed("ui_down"): velocity.z = 0; elif Input.is_action_pressed("ui_up"): velocity.z = -SPEED; elif Input.is_action_pressed("ui_down"): velocity.z = SPEED; else: velocity.z = lerp(velocity.z, 0, 0.1); if velocity.x >= 0.0 or velocity.x = 0.0 or velocity.z
@BacnManYT Жыл бұрын
You are an amazing teaher I went from not knowing how to doing anything in godot to knowing how to mess with meshes and coding in the native language GDscript, I am lucky to have found such a gem, it also helps that GDscript is simlar to python as I did some python coding in school, but you break it down better than anyone could thank you!
@VikingVertigo4 жыл бұрын
To fix the diagonal speed and rotation issue, check if the length of the velocity vector is greater than SPEED, if it is, normalize it and then multiply it with SPEED so the length of the vector is now equal to SPEED: if velocity.length() > SPEED: velocity = velocity.normalized() * SPEED To fix the rotation, you can just use the velocity vector for rotation as well (will also decelerate, because it is already lerped).So you can basically remove all the $MeshInstance.rotate_ from the if statements and treat them just like the move_and_slide. Just add it before or after it: $MeshInstance.rotate_z(deg2rad(-velocity.x)) $MeshInstance.rotate_x(deg2rad(velocity.z)) move_and_slide(velocity)
@vojtastruhar89503 жыл бұрын
For the ball rolling this works pretty well in my opinion: mesh.rotate_z(deg2rad(-velocity.x)) mesh.rotate_x(deg2rad( velocity.z)) The velocity is already normalized, so you dont get faster rotation when rolling diagonally. Anyways cool video!
@marykadlubowski5533 жыл бұрын
When you were coding the Steve ball mesh rotations, why wasn't your constant ROTSPEED = (deg2rad(6)) ? Will it cause trouble elsewhere? I love the series. I watch a part all the way through, itching to start, then watch it again to follow along. I also am making a document with the URL code for each step, so I can jump back and forth quickly. I am just sad I didn't start it until now.
@ronstephen4 жыл бұрын
hey, I got an even better and easy idea to rotate that ball. at the end of the lines add: $MeshInstance.rotate_z(-deg2rad(velocity.x)) $MeshInstance.rotate_x(deg2rad(velociy.z)) thanks for your tutorial and inspiration.
@logicalapple_32743 жыл бұрын
just wanted to drop this in - your enthusiasm is really motivating and these tutorials are amazing , you remind me of brackeys but i prefer your way of teaching :)
@frikabg10 ай бұрын
8:36 about importing the files for the ball. Currently the blender version that I am using is 4.0.0. The blender website is down because it is being DDOS attacked atm so I downloaded this version from the Microsoft store. The options when it comes to extracting files is quiet different but the export process isn't that hard you should be ok. What is very different is the files that you have to copy after you extract the immage with blender. For me after you export the ball image from blender you have 4 files and unless you copy all of them the ball is not loading properly in Godot. the 4 files are playerball.bin playerball.gltf luxo.png and luxopng.import
@xXBrutus67Xx4 жыл бұрын
If someone cannot import correctly the ball and its material, make sure you have these nodes in Blender : image texture - Principled BSDF - Material output. If your nodes are image texture - Material output, it doesn't work in Godot.
@gamesense44715 жыл бұрын
Files are not able to download. Please help sir!!
@BornCG5 жыл бұрын
There is a link in the description of this video right below the video. The link (starts with bit.ly/...) will take you to a download page. The .blend file must be opened in Blender 2.8 and will not work in Blender 2.7x.
@hugoahn51142 жыл бұрын
me watching this video with blender 3.0 released and he has 2.8 BETA. Feels good living in the future
@zwiebelsaften91753 жыл бұрын
When I try to export the playerball it doesnt work because of "unknown location" WTF? Using Pop OS 20.10
@JayJoeVid4EVER3 жыл бұрын
Theoretically (and correct me if I'm wrong) but would it be possible to use $(MainCamera) and add movement functions to that component alone, creating a first person experience without an actual model. Not that I'm considering this or anything but It'd just be cool to learn.
@stevesmith99735 жыл бұрын
Thanks for another great video!
@wallybe29465 жыл бұрын
Really good information Thank-you for the Tutorial
@wadha23144 жыл бұрын
Why is my Luxo material weird? The texture shows only from the bottom, and something appears in the terminal “condition “!p_src” is true.”, can anyone help?
@pnkbtle14012 жыл бұрын
Question. I'm using Blockbench for modeling since it works better for my pc than blender. But how would I make sure it's up to scale with godots? How do I translate scale between two different programs?
@eldadario73394 жыл бұрын
wow is incredibly great
@thebossladyhashimi57613 жыл бұрын
Hey I actually have a problem with the camera, and I cant see my scene whenever i play the scene is there anything I can do, please? thnkz
@marykadlubowski5533 жыл бұрын
Is your camera facing in the correct direction? It seems silly, but I kept thinking the triangle on the camera was the "lens". I was contemplating the void...
@edawg7043 жыл бұрын
refer to the first video for camera setup
@gihananuruddha88614 жыл бұрын
@2.55 "….it's really just a sphere, we are going easy here and this sphere in the …." rhymes!
@MITTZdesu2 жыл бұрын
So, you can't make it so that the player can redirect buttons in the menu, like in "minecraft"? And .. When I saw "blender" and "keys" in one line, it seemed to me that there would also be a mention of exporting forms ]:
@zjeremyyparko4 жыл бұрын
The natural rolling speed for a ball is 3 degrees/sec irl. Just change the ROTSPEED constant to 3 and the ball rotation should look more natural.
@MrHatoi4 жыл бұрын
Godot has full support for both .glb and .gltf versions of the format, so it shouldn't make a difference which one you choose. glb is probably actually better for final releases since it produces smaller file sizes.
@frikabg10 ай бұрын
the video and the current versions of blender and Godot have huge discrepancies ... i can only imagine that things will get much much much worse going forward. For beginners, I would advise them to find newer guides in order to avoid huge headaches going forward.
@thomasamathew40584 жыл бұрын
hey great content..helping me in a big way..can you please help me with an error ? at 16:21 when the ball takes on the skin it is fine in "Steve" scene but when I go to the main "Level" scene the ball becomes a black sphere...I don't know why?...Please help
@bbgamingplay15114 жыл бұрын
Help whenever I try to type the dollar sign which is Num lock on + alt+ 36 it's ok. But when I try and type 3 it takes me to the end and does not work!! Please help me.
@rileycox90923 жыл бұрын
Hey bro!! Having a hard time getting the ball to rotate/roll I keep getting an error code about the meshinstance saying the node isnt found, I've checked the code over and over again it works fine, when remove the lines of code pertaining the actions for the meshinstance the ball moves fine, slides back and forth with every press of the arrow key but as soon as I try to code for the rotation of the mesh on the respective z and x axis it doesnt work and I receive the error code mentioned above. Any idea what might be my problem?
@alfredjgreen3 жыл бұрын
Hi Colin! Can you share the .blender gltf and other files of this tutorial in a zip file please! Chrome blocks the standalone download of these files as dangerous! Thanks!
@subankarhalder92375 жыл бұрын
Thanks for the tutorials, I am learning.
@KrazeeCain4 жыл бұрын
I tried to make my own quick material using a voronoi generator for the ball instead, and the material isn't applied to the ball when I open it in Godot, nor can I find a way to apply it.
@LoganMTM4 жыл бұрын
Do you really need to createt 500 scenes just to change the sphere mesh??? Why didn't you just the 3d mesh node ?
@Brea0clock2 жыл бұрын
This is an amazing tutorial! But it needs a little updating. For me this was made 1-2 years ago.
@dontdoit72242 жыл бұрын
I have an issue, when changing the rad speed it goes extremely fast, the only number that works is 8
@Nothing-dl9li4 жыл бұрын
Why My rotate isn't working? As the character rotates on the Z Axis, it slowly moves to the X Axis
@Mateus_Longo2 жыл бұрын
Thank you, sir.
@eddyrouhana49653 жыл бұрын
Man I i cant open the game from 15:58 minutes in video help me i dont know why i just got confused and i think i deleted steve.tscn cannot open the file
@smayankartha62974 жыл бұрын
When i play the scene the ball appears completely black, its only when i move it to certain parts of the floor that the texture comes into appearance. any idea how to solve this issue?
@anavrindlouw34505 жыл бұрын
I will also share your videos to my friends who are looking learn programming and creating games
@mikewest56705 жыл бұрын
i took a python course from udemy right before watching these videos and it helped out
@kevindadmun23373 жыл бұрын
when i move the ball up the balls material disappears the ball turns black. how do i fix this?
@antoinecherfane3 жыл бұрын
Hi i have a problem downloading the files needed. every time i press download it just reloads and does nothing . Help please .
@kallelfiori97673 жыл бұрын
just add a velocity.normalized() at the end to fix de diagonal velocity
@hypermonk33y568 ай бұрын
can you please share the updated script source code for godot 4 as its hard to actually figure out the current syntax coding from an old version to the current one
@sonicbro64463 жыл бұрын
how to do you make it so the movement of the player is continuous? or to put it in other words, how make it possible to hold down the direction keys?
@MoKaLu5 жыл бұрын
very nice tutorial, well paced, well explained, you're a very good teacher. Thank you sir.
@BornCG5 жыл бұрын
Thanks!
@savacristian42454 жыл бұрын
do I really need to have blender to make Steve have a texture? edit:i just realised how stupid i am
@gamert25254 жыл бұрын
Great thanks sir
@yanko6943 жыл бұрын
can lerp be applied to the rotation of the ball so that it feels more natural when it stops... right now the rotation stops but the ball still has that tiny slide effect before it stops.
@realjames13 жыл бұрын
About 2 hours in and I already learnt so much from this series.
@thehiddenalg83602 жыл бұрын
could you make a whole like map and then like import it into your game? or how would you get a map into the game?