Why You Should Use CFrames

Поділитися
Вставка
  • Опубліковано 30 лис 2024

КОМЕНТАРІ • 106

  • @byteblox100
    @byteblox100  10 місяців тому +9

    Get all of my knowledge in one package:
linktr.ee/ByteBlox

    • @wonsole
      @wonsole 10 місяців тому +1

      nga is this inflation why are you rising it to $84.99???

    • @byteblox100
      @byteblox100  10 місяців тому

      @@wonsole i didnt change the price, udemy is having issues right now lmao

    • @eycho8099
      @eycho8099 10 місяців тому

      @@byteblox100 what is the normal price

    • @byteblox100
      @byteblox100  10 місяців тому +1

      Like 40 bucks I think

    • @eycho8099
      @eycho8099 10 місяців тому

      @@byteblox100 bet

  • @GSFigure
    @GSFigure 10 місяців тому +64

    Big props to the people who made CFrames a thing. Single-handedly saved my life

    • @PranavHuman
      @PranavHuman 10 місяців тому +1

      Without cframes I would have quit a long time ago

    • @alexiz_bs
      @alexiz_bs 10 місяців тому

      lmao me too@@PranavHuman

    • @TULEYDIGITAL
      @TULEYDIGITAL 9 місяців тому +1

      CFrames are x, y, z, and three xyz unit vectors to be specific about orientation in 3D space. They are pretty much a matrix calculator. You can probably learn the fundamentals in Linear Algebra (usually after Calculus 2 or 3 in college).

  • @somenerd8139
    @somenerd8139 10 місяців тому +18

    Setting position still has its uses though, of course. If you don’t want to make the part’s rotation change, you can set Position instead of CFrame.

    • @byteblox100
      @byteblox100  10 місяців тому +6

      Absolutely. But most of the time it’s just better to use CFrame as it accounts for literally every aspect of location

    • @chibisayori20
      @chibisayori20 10 місяців тому

      @@byteblox100 also how about sending cframes trough remote event? especially unreliable ones which have 900 byte limit i think, so do you just not send it at all? or send only 1 value of a cframe and construct it on the receiver's end?

    • @byteblox100
      @byteblox100  10 місяців тому +1

      You’re able to just send a CFrame over, it’s just another value like a string or a number

    • @chibisayori20
      @chibisayori20 10 місяців тому

      @@byteblox100 I know i was talking about how UnreliableRemoteEvents would pass a cframe over the network, considering it's 900 limit which i assume a single cframe exceeds that

    • @whupass
      @whupass 10 місяців тому

      @@chibisayori20a cframe is pretty much just a matrix containing 9 numbers. Pretty sure they use double-precision floating point format which is 64 bit. 64*9 is 576, so a single cframe should pass under the data limit.

  • @Hazuzis
    @Hazuzis 10 місяців тому +3

    Dude, u just appeared in my life so late, I finally understand CFrame after 2 years.

  • @TheVortexDev
    @TheVortexDev 8 місяців тому +1

    i love these videos, they help me focus while im coding/scripting ❤

  • @yarik_superpro
    @yarik_superpro 10 місяців тому +13

    in short:
    when you using vectors you making a lot of useless calculations to engine,while cframe straight up execute it into matrix

    • @rexuph7242
      @rexuph7242 4 місяці тому

      what

    • @aienthusiast618
      @aienthusiast618 4 місяці тому

      @@rexuph7242 hes saying that when you individually set each vector to match the goal part youre wasting computation while setting the cframe equal to the goals cframe doesnt waste any calculations and automatically makes the position and orientation properties equal

  • @EpicPico0625
    @EpicPico0625 10 місяців тому +12

    Cframe = CoordinateFrame

  • @giorgiotr
    @giorgiotr 10 місяців тому +5

    hi! I think you should talk about run context for scripts! you can turn scripts in the workspace to local scripts and that's very useful! love ur vids!

  • @TheEssential13
    @TheEssential13 9 місяців тому +1

    Dude thank you so much I finally understand what CFrame is!

  • @FriedMonkey362
    @FriedMonkey362 10 місяців тому +4

    Even 2x speed isn't enough for this dude

  • @Robloxer113
    @Robloxer113 8 місяців тому

    Extra info:
    The position has some use as well, for example when you need to teleport a part to some position but don't need it to rotate.
    The CFrame can also bring character with his rootPart.
    CFrame stands for "Coordinate Frame".
    CFrame can have more types in .new function, more in documentation of roblox.

  • @suiza8819
    @suiza8819 10 місяців тому +10

    Seriously great tutorials, the only person I've ever seen explain things in the exact way I need them explained lol
    If it's not too much trouble a Raycast tutorial would be awesome :D
    (Nah but seriously tho you're one of the only people I've subscribed to recently and the only person who's videos I watch religiously, keep up the great work!)

    • @byteblox100
      @byteblox100  10 місяців тому

      Thanks bro, I did a raycast tutorial a while back lol

  • @azutreo
    @azutreo 10 місяців тому +5

    This is unrelated to the video's purpose itself, but I do want to state that it might be better to teach using modern methods, such as using `task.wait(3)` instead of using `wait(3)` as wait() is deprecated, for good reason.

    • @byteblox100
      @byteblox100  10 місяців тому +2

      I will hate on task.wait() until I die

    • @boi875_RBLX
      @boi875_RBLX 10 місяців тому +1

      @@byteblox100 we cant be friends ever

    • @chibisayori20
      @chibisayori20 10 місяців тому

      @@byteblox100
      how about global overwrite? like
      wait = task.wait
      wait(2) -- will use task library instead of built-in wait but you can still write it as if it's wait()

    • @twomaddev
      @twomaddev 10 місяців тому

      @@byteblox100 Why is this? How could you possibly even call yourself a teacher if you are using a depreacted method? Wait() is deprecated for a reason.
      Wait() will literally throttle your script until the elapsed time has passed, and wait() is not even accurate when frames matter (as it updates on 30 fps interval vs task.wait which uses 60 fps)

    • @byteblox100
      @byteblox100  10 місяців тому

      @@twomaddev yeah but thats nerd stuff

  • @Axcyantol
    @Axcyantol 10 місяців тому +2

    pro tip: use transcript to quickly get info and get to parts

  • @sympleton7439
    @sympleton7439 10 місяців тому +6

    Hey ByteBlox, I know you've already made a video on ModuleScripts explaining how they work, but I still don't get when I'm supposed to use them over regular server scripts. Can you make a video on organizing/optimizing your games?

    • @techderv3031
      @techderv3031 10 місяців тому

      normally I use modules just for organization, or even add modular functions, as the name suggest, so i dont fill up my main script and instead have multiple "work spaces" that each module script have, each one with their own function, having better organization and more efficient

    • @sympleton7439
      @sympleton7439 10 місяців тому

      @@techderv3031 I wish there were videos on optimizing your games out there so I could learn the do's and dont's

    • @byteblox100
      @byteblox100  10 місяців тому

      Use them when you need functions stored in one spot. Let’s say you have a fighting game, and you have functions for abilities. Making a module for those functions would be smart because now you can access these functions from any script

    • @cactisiusninja
      @cactisiusninja 10 місяців тому

      Btw what situation would you use Modules over Bindables?​@@byteblox100

    • @sympleton7439
      @sympleton7439 10 місяців тому

      @byteblox100 I still don't understand why I'd need to access such functions from other scripts, or what having a function stored in one spot could do for me.

  • @holaholahee
    @holaholahee 9 місяців тому

    I remember when i first started learning and hating on cframe lol, now its the only thing i use and cant even remember the last time i used position/orientation

  • @rxdact
    @rxdact 10 місяців тому +1

    woohooo! byteblox!!! cframe!!!! 😁😁😁

  • @imoctavs
    @imoctavs 10 місяців тому +2

    help the relationship video didnt tell me how to break up and now im stuck with someone named Rigette

    • @rschoolu
      @rschoolu 10 місяців тому

      He's gonna get to it just wait

  • @1x5x0x7x3
    @1x5x0x7x3 10 місяців тому

    i always use cframes already because i'm traumatized of using positions on characters...

  • @jkkienzle1356
    @jkkienzle1356 10 місяців тому +1

    you should do a tutorial about aerodynamics

  • @alex342gwsturk8
    @alex342gwsturk8 10 місяців тому

    i love cframes but oh my god the motor6d cframe for the R6 rig is disastrous, what the hell were they thinking when they made the R6 rig????

  • @vieHxti
    @vieHxti 10 місяців тому +1

    ur vids are just next lvl

  • @EATBnose
    @EATBnose 8 місяців тому

    oooh, this maybe explain why my try of door didnt worked, thx bro

  • @achicken3120
    @achicken3120 10 місяців тому

    I love ur videos im learning so much

  • @tower9602
    @tower9602 9 місяців тому

    why not to use position and orientation? Simply because setting cframes is quicker than position or/and orientation

    • @Triploonic
      @Triploonic 9 місяців тому

      And also it doesn't have to make a bunch of calculations when you are using vector3

  • @betapacket
    @betapacket 10 місяців тому +1

    CFrame is literally just Position and Rotation combined.

    • @DagooseDev
      @DagooseDev 8 місяців тому

      It has nice uses like offset and pivotto

    • @Triploonic
      @Triploonic 4 місяці тому

      and also setting cframe will also move constraints, welds, etc with it

  • @literally_bob
    @literally_bob 10 місяців тому

    Maybe make the goto position invisible

  • @WarLapse
    @WarLapse 10 місяців тому

    Can you make explanation/tutorial on copylocking, pls?

  • @MarsterMikkel
    @MarsterMikkel 9 місяців тому

    roblox should add quaternions

  • @_beyi
    @_beyi 10 місяців тому

    try
    The CFrame Class's LookVector Property
    local part = workspace.Part
    local endPart = workspace.endPart
    part.CFrame = CFrame.new(part.CFrame.p, endPart.CFrame.p) -- Point part towards endPart
    while part.CFrame ~= endPart.CFrame do
    part.CFrame = part.CFrame * endPart.CFrame.LookVector -- Move part forwards based on where it is facing
    wait(0.06)
    end

  • @crimsonisms
    @crimsonisms 10 місяців тому

    this video is why i use cframes

  • @truarrogancex
    @truarrogancex 10 місяців тому

    CFrame is a Coordinate-frame

  • @Zero-pc5cj
    @Zero-pc5cj 10 місяців тому

    If use Cframe for moving object like moving plateform do player fall off plateform?
    Player not move with plateform like issue when stand on plateform

    • @visualkitten4048
      @visualkitten4048 9 місяців тому

      you need to use platformstand or some property like that on the player character

  • @DNSzzz
    @DNSzzz 10 місяців тому

    The thumbnail broke me 💀

  • @JoeMama2-i9k
    @JoeMama2-i9k 10 місяців тому

    Pls make a vid on how to animate acs 2.0.1

  • @Create_new__handle
    @Create_new__handle 10 місяців тому

    How is it that always when i say to myself i need to learn this the next day you upload a video about that thing.

  • @RodyTheRoad
    @RodyTheRoad 10 місяців тому +1

    5:25 Interesting, I thought that to account for orientation you're supposed to do CFrame.new(X,Y,Z) * CFrame.Angles(X,Y,Z)? This is the first time I've seen this approach

    • @dany_
      @dany_ 9 місяців тому +1

      He used the deprecated constructor, you are supposed to use Angles.

  • @AzureSpike
    @AzureSpike 8 місяців тому

    CFrame stands for Coordinates Frame

    • @Scientist_Tv0
      @Scientist_Tv0 3 місяці тому

      Forgot to say "Fun fact:"

    • @AzureSpike
      @AzureSpike 3 місяці тому

      @@Scientist_Tv0 schblugbalud this is not a fun fact

    • @Scientist_Tv0
      @Scientist_Tv0 3 місяці тому

      @@AzureSpike tho it is a fact

    • @AzureSpike
      @AzureSpike 3 місяці тому

      @@Scientist_Tv0 idk why you just randomly assumed, i literally just answered byteblox bc he didnt know what it stands for

    • @Scientist_Tv0
      @Scientist_Tv0 3 місяці тому

      @@AzureSpike it sounded like a fun fact tho, but if you're denying it i can't do nun

  • @EpicPico0625
    @EpicPico0625 10 місяців тому

    double upload? gamer

  • @gaidqr
    @gaidqr 10 місяців тому

    Fianlly... byteblox cframe tutoriall

  • @Jaid______1111
    @Jaid______1111 10 місяців тому

    2nd day of asking how to access the starter player's humanoid using a serverscript

  • @DiffGameContent
    @DiffGameContent 10 місяців тому

    Bro Tween with Frames are much easier

  • @bradleywhais7779
    @bradleywhais7779 10 місяців тому

    Hey I dont think your emails are working. Last one I got was Jan 23.

  • @ThatUltra
    @ThatUltra 10 місяців тому

    very kewl!

  • @dc4stuff
    @dc4stuff 10 місяців тому

    c fraune 2 haurd i want yuse positin isead

  • @wosi-old127
    @wosi-old127 10 місяців тому

    brother make the ui look better👍🏼 will def help

  • @MacDonaldEdmund-t6o
    @MacDonaldEdmund-t6o 2 місяці тому

    Miller Sharon Johnson Timothy White Margaret

  • @dylan2-ud9yd
    @dylan2-ud9yd 10 місяців тому

    wait for child in server scripts? 😂

  • @Sokker_
    @Sokker_ 9 місяців тому

    hot

  • @vrfrenzy8451
    @vrfrenzy8451 10 місяців тому

    ye

  • @fitmotheyap
    @fitmotheyap 10 місяців тому

    What is that thumbnail😭
    Poor no cframe

  • @TheMrShowerMan
    @TheMrShowerMan 9 місяців тому

    One of the most powerful abilities of CFrames is ability to offset CFrames from Other CFrames.