2D CHARACTER CUSTOMIZATION in Unity Tutorial

Поделиться
HTML-код
  • Опубликовано: 16 янв 2025

Комментарии • 252

  • @martinsky7748
    @martinsky7748 4 года назад +110

    These tutorials of your are way more informative than my uni studies

  • @CapsCtrl
    @CapsCtrl 3 года назад +23

    Thank you, this was very helpful

    • @CapsCtrl
      @CapsCtrl 3 года назад

      @Judah Luke scam

  • @NinetyRalph
    @NinetyRalph Год назад +4

    I was starting to get into the spritesheet madness and I wondered how it should be done, thank you so much, keep it up!

  • @thelastoilmat3563
    @thelastoilmat3563 4 года назад +31

    Yo bro your tutorials are really well made and super informative. I'm learning Game dev by myself from zero. But your videos are really helping me ease into developing my own games

    • @BMoDev
      @BMoDev  4 года назад +16

      Awesome I hope they help! Keep working at it, it can seem like a lot to learn when starting, but game dev isn't about how much you know, it's all about being able to learn what you need to know. Every game is different.

  • @laggard31
    @laggard31 4 года назад +27

    I spent DAYYSS trying to figure out how to get unity to save my customized character and I FINALLY just realized it earlier today, AND NOW THAT I DID! your video came up as a recommended -___- the universe mocks me fml.

  • @GreystripeWarrior
    @GreystripeWarrior 2 года назад +9

    Great tutorial, very clear, simple and generalizable. Can't wait to use it in my project

  • @Skyblade22
    @Skyblade22 3 года назад +4

    oh my god, this is how you do a tutorial video. Thank you so much, so much useful information without wasting any time

  • @dwight3555
    @dwight3555 3 года назад +3

    Very well explained, straight to the point and you show everything so we don't get lost on the way!

  • @genx_chrissy
    @genx_chrissy Год назад +1

    I love the little noise when you break the character into parts. It's not often informative videos also entertaining, kudos.

  • @Ainzworth269
    @Ainzworth269 4 года назад +9

    omg really amazing contents, keep up the good work!!!

  • @iluvcynth
    @iluvcynth 3 года назад +7

    The best tutorial of this cathegory. Eactly what I needed and straight to the point... New sub! Keep it up bro :)

    • @BMoDev
      @BMoDev  3 года назад

      Appreciate you!

  • @joaohoffman5613
    @joaohoffman5613 4 года назад +4

    After days and days searching, finally I found!!!

    • @BMoDev
      @BMoDev  4 года назад

      Nice! Hope it helps :)

  • @stefan429
    @stefan429 4 года назад +12

    thank you for this! i was able to refactor the customize button as a gender selector as well which is what ive been working hours on :D

    • @BMoDev
      @BMoDev  4 года назад +4

      Awesome! Nice work!

  • @TransGuyShane
    @TransGuyShane 3 года назад +1

    I've been having so much trouble with my project. this had helped alot thank you.

  • @ZLGaming140
    @ZLGaming140 4 года назад +33

    In PreviousOption()
    Please change "if (currentOption

    • @williamallen6382
      @williamallen6382 4 года назад +3

      Thank you for that, I wondered how to resolve that problem

    • @elferchusmaymax8122
      @elferchusmaymax8122 3 года назад +3

      Also, I don't know why, when I pressed Randomize it skipped the last body part always, so I did this instead:
      public void Randomize(){
      currentOption = Random.Range(0, options.Count); //I changed this line, just deleted -1
      bodyPart.sprite = options[currentOption];
      }
      So it works now

    • @thejumbler6000
      @thejumbler6000 2 года назад

      Thank u

  • @sneedsfeedandseed2
    @sneedsfeedandseed2 4 года назад +5

    This tutorial was really good! Thank you for uploading this!

    • @BMoDev
      @BMoDev  4 года назад +1

      Np, happy to hear!

  • @cjhlsdfj
    @cjhlsdfj 3 года назад +1

    thank you for making this! I've been looking for someone to do a clean explanation of this type of implementation + code EVERYWHERE

  • @naw3213
    @naw3213 4 года назад +8

    8:46
    Why not use modulus? Ex. "bodyPart.sprite = options[currentOption % options.Count];"
    I'm relatively new to coding and game design, so I appreciate any details you provide in your answer. Great tutorial! Keep up the good work!

    • @BMoDev
      @BMoDev  4 года назад +5

      You totally can! From a performance standpoint its so minor that its totally irrelevant, which means at times like this it comes down to clarity and preference.
      I wouldn't say using a modulo is "complex" by any means, but in terms of reading through code, it will definitely give some pause to understand how it works. The result of what I use in the video is the same, just reads differently

  • @shulkforlife2683
    @shulkforlife2683 4 года назад +2

    Really good video man, your tutorials are incredible

  • @jonahschmidt8912
    @jonahschmidt8912 3 года назад +4

    The start was exactly my thought proccess

  • @МемМемовен
    @МемМемовен 3 года назад +1

    Thank you, you deserve a lot more subscribers!

  • @mrfish6846
    @mrfish6846 2 года назад +1

    great tutorial really flushed out some things I didn't quite understand

  • @willsonx7754
    @willsonx7754 4 года назад +1

    Just what i needed, thanks! Keep up the awesome tuts!!

    • @BMoDev
      @BMoDev  4 года назад

      Appreciate it 🙏

  • @JasinDow
    @JasinDow 4 года назад +3

    This is a pretty useful tutorial. Thank you for that.

    • @BMoDev
      @BMoDev  4 года назад +1

      Thanks for the kind words!

  • @KyleCook-y8m
    @KyleCook-y8m 2 месяца назад

    Great video, loved it. One thing that I would suggest with handling the option overflow would be modular arithmetic.
    currentOption = (currentOption++) % options.Count
    It avoids having to wrap that reset check in the if statement!

  • @GoMan-21
    @GoMan-21 4 года назад

    Thanks, this video really helped a lot. Great explanation and was able to setup a nice character creator. Subscribed!

  • @willofthemaker
    @willofthemaker 4 года назад +1

    Fantastic! New channel to binge

  • @kolinha
    @kolinha 3 года назад

    Hi! Brazilian here! Good tutorial sz

  • @AveryLiligant
    @AveryLiligant 2 года назад

    Thank you so much, very helpful and you are very good at this

  • @dmmarch7185
    @dmmarch7185 2 года назад

    Really cool video for studing, thanks

  • @WorldAquariumSingapore
    @WorldAquariumSingapore 2 года назад +1

    nice video there thks and how to move the character if its a top down game which need to move up and down and attack skeletal animation as well as the animation window allows only to use one set of animation parts?

  • @nijatmammadov8509
    @nijatmammadov8509 3 года назад

    Thanks, very good explanation!

  • @junhyeokjeon815
    @junhyeokjeon815 2 года назад +1

    1:55 XD

  • @qy4036
    @qy4036 4 года назад

    Thanks for this tutorial it's really helpful!

  • @adamhilali806
    @adamhilali806 4 года назад +2

    can we make the player run? or move after selecting it plz to that for part 2

  • @Sheynification
    @Sheynification 4 года назад

    Amazaing tutorial. Thank you for making that! I wish you best luck in making new videos!

    • @BMoDev
      @BMoDev  4 года назад

      Thanks I appreciate that! Hope it helped!

  • @dandragomir6413
    @dandragomir6413 4 года назад

    Thank you very much! Very good tutorial!

    • @BMoDev
      @BMoDev  3 года назад

      🙏Thanks friend, appreciate it

  • @jakeduncan2721
    @jakeduncan2721 4 года назад +1

    Noice tutorial. Like the outro music too

  • @space3567
    @space3567 4 года назад

    You made my game a lot better btw
    Edit: I have been trying to do something related to this for a whole 2 months now!
    Also if you do some modification it can change the color of the sprite too

  • @Tarazed609
    @Tarazed609 3 года назад

    you're a life saver! It's the perfect base to build my code on :D thanks a lot!!!

    • @BMoDev
      @BMoDev  3 года назад +1

      thats awesome - I'd love to see your game someday!

  • @thatsmaik
    @thatsmaik 4 года назад +1

    Awesome, thanks.

    • @BMoDev
      @BMoDev  4 года назад

      You bet!

  • @delta_mayur
    @delta_mayur 3 года назад

    Thanks it's very helpful for my next game.thanks a lot

  • @misli_kraba
    @misli_kraba 4 года назад

    Informative and fun. Thanks a lot

  • @MikeErty
    @MikeErty 3 года назад

    Just what I need!

    • @BMoDev
      @BMoDev  3 года назад

      Love to hear it!

  • @txshiroalt4656
    @txshiroalt4656 4 года назад +3

    I'm curious how would i save the player customization with JSON ? Is there any tutorial ? Also great video, exactly what I was looking for. And I see that you finally have a more time for youtube :D

    • @BMoDev
      @BMoDev  4 года назад

      I've seen projects that save out assets to an external file and load on game startup, I don't have a specific tutorial (I can look into making one down the road). I'd look up PlayerPrefs, its a simpler built in Unity solution that can help out with this!
      And I'm trying to keep on top of putting out videos, things have just been a little hectic :)

    • @txshiroalt4656
      @txshiroalt4656 4 года назад

      @@BMoDev PlayerPrefs hmm... okay thanks for info :D

    • @CirbyWeh
      @CirbyWeh 4 года назад

      I am also very curious what is a recommended way do save my customized player.
      Currently I am using JSON to save all my data

  • @blackchristgaming
    @blackchristgaming 3 года назад +1

    Perfect

  • @CeylonGameDev
    @CeylonGameDev 3 года назад

    Thank you, it was so helpful 💙

  • @Asif-ze5hp
    @Asif-ze5hp Год назад

    Great tutorial

  • @Schrient
    @Schrient 3 года назад +1

    Very useful. Thanks!

    • @BMoDev
      @BMoDev  3 года назад

      You bet!

  • @JoshuaGrisewood
    @JoshuaGrisewood 2 года назад

    So you started by talking about top down art, then switched to straight platformer? It'd be nice if there was a single tutorial on the whole internet on how to use skeletal animation for the 4 directional movement that you previously talked about in this video.

  • @thananjaijongrak7604
    @thananjaijongrak7604 4 года назад

    Nice tutorial, thanks.

  • @TheAwesomeAlan
    @TheAwesomeAlan 3 года назад +1

    Is there a tutorial on the version you showed at the beginning, like Stardew, without the skeleton? I want to make a character using spritesheet idles/movements, not a skeletal animator, and need a way to swap between different things

  • @detrixx3587
    @detrixx3587 4 года назад +2

    0:16 from which game was this?

  • @COLDoCLINCHER37
    @COLDoCLINCHER37 4 года назад

    One method I suggest, is having two sprites one basic skin and the other a "mask skin", the basic will have all the code, but the mask will just have different skin masks. So if say input=f Play.animation for second torso or robe.

  • @artwhirl3517
    @artwhirl3517 4 года назад

    Nice video bro it helped a lot

  • @rudragoenka4572
    @rudragoenka4572 4 года назад +2

    During the development, everything was going fine but when I gave the build command there was a error saying - "Assets\Scripts\CharacterCreator\CharcterCreatorMenu.cs(27,3): error CS0103: The name 'PrefabUtility' does not exist in the current context" . I checked if I hadn't typed "using UnityEditor;" But I did please tell me how can I fix this

    • @faelpsyzera
      @faelpsyzera 3 года назад

      #if UNITY_EDITOR
      PrefabUtility.SaveAsPrefabAsset(avatar, "Assets/nome.prefab");
      #endif
      No inspector do prefab coloque na Tag o valor "EditorOnly"
      Versão da Unity: 2020.3.21f1

    • @jimbeam3981
      @jimbeam3981 2 года назад

      @@faelpsyzera Thankyouuuuu!!!!!

  • @sirin9850
    @sirin9850 Год назад

    What's the game he shows at 0:13

  • @Ivan_Helsing
    @Ivan_Helsing 3 года назад

    Thanks a lot!

  • @TheOnlyPedroGameplays
    @TheOnlyPedroGameplays 2 года назад +1

    What about changing things like the proportions? For example if you make a larger bulkier character and equip a chest plate it'll look a certain way, but if you make a skinny light character and equip the same chest plate it's going to look smaller.

  • @TheKingGoose
    @TheKingGoose 2 года назад +1

    You can't use PrefabUtility in a build. Do you have a fix for this?

  • @zendraw3468
    @zendraw3468 2 года назад

    this is fine, but what about changing animated spritesheets

  • @anan_dayo
    @anan_dayo 4 года назад +1

    This is Amazing Tutorial, But How To Fix this, i can't build this program if there is "using Editor" on My Script Which is my Submit Function not working if Editor / Prefab Utility must be deleted ? Thanks a Lot

  • @leinardesteves3987
    @leinardesteves3987 10 месяцев назад

    Is there a way to still incorporate frame by frame animation and still change the outfits? Maybe by layering a new asset on the character every time they change outfit? Frame by frame animations are still smoother and gives more freedom of movement than the skeletal which looks way too cartoony

  • @kross8755
    @kross8755 4 года назад

    Man that it what i need! thx!

    • @BMoDev
      @BMoDev  4 года назад +1

      Glad it could help!

  • @christophergibson3846
    @christophergibson3846 3 года назад

    This is great, however after loading into the new scene then returning to the character select screen.. it is showing some strange results. Removing some of the sprites from the selectors? Despite the body parts being in the prefab.

  • @dimi-tri
    @dimi-tri 3 года назад

    Sounds like lumpy space princess....i love it

    • @BMoDev
      @BMoDev  3 года назад

      this is the best insulting comment I've gotten 💘

  • @JoséCanteros-k1n
    @JoséCanteros-k1n 5 месяцев назад

    And what about rotating the player, because that is all front player so the objects are always the same on idle or walking. But what about when you are going north and you need to change to the back?

  • @gamedevbaiyi936
    @gamedevbaiyi936 2 года назад

    Thank you sir!!! I was wondering how to customize 2D characters a few days. "It can't be sprite sheet",I am just thinking. I know a little thing about "Skeletal" right now.

  • @pfp4ever
    @pfp4ever 4 года назад

    that given means you have to have the sprites already ready glad i decided to do EVERYTHING myself

  • @TheFibrewire
    @TheFibrewire 3 года назад

    ty so much

  • @iowoigames
    @iowoigames 4 года назад +1

    Dudeeee, you are genius. I buy a course from you if you have!!!

  • @gmielli1281
    @gmielli1281 3 года назад

    u saved ma life

  • @vdwhite687
    @vdwhite687 Год назад

    I hope this works with like a color swapper, because this would be perfect.

  • @ivanm71
    @ivanm71 4 месяца назад

    Is there a way to customize pixelart frame animation in any smart way?

  • @rdev3720
    @rdev3720 4 года назад +2

    how to save as json without editior

    • @BMoDev
      @BMoDev  4 года назад

      That... is a larger discussion. Its honestly better to implement some sort of Save system, as JSON is human readable, therefore easily editable (maybe that is ok for your project), but they actually can get pretty complicated.

    • @rdev3720
      @rdev3720 4 года назад

      Could you explain how to implement as Jason or xml

  • @shibalnugamingyt5611
    @shibalnugamingyt5611 2 года назад

    Hi there, I hope you are still active. I'm having problem regarding save/load character skin, do you have any recommendation other ways to save/load to next scene?

  • @thejumbler6000
    @thejumbler6000 2 года назад

    This is verryy helpful and is working fine for me but can u please explain me how do I save the prefab after customising in a build? Please it would be very helpful as I have spent a lot of time trying to find an answer..

  • @abdulkadirdursn
    @abdulkadirdursn 4 года назад

    Great video. Thank you.

  • @jonathanbarone1257
    @jonathanbarone1257 2 года назад

    Hello! How to make an animator handle many sprite renderers?

  • @diernori
    @diernori 2 года назад

    ArgumentException: Can't save persistent object as a Prefab asset. How do i fix that?

  • @fabiocastello3118
    @fabiocastello3118 3 года назад

    Thank you a lot! I was right in search for a tutorial like this, with a helpful "learn the idea" approach! I also loved the way you show how to use the customized character in another scene. Simple question: saving the player object as a prefab would persist the new prefab even if the game is closed an opened again, or it would be like a "session" prefab? Do you know a link to a source to find out more about the percistency? Thanks!

    • @BMoDev
      @BMoDev  3 года назад +2

      Yes that's right, it would be a permanent change to the asset itself since we're overwriting it. So it would persist even if closed if using the same file. "Save systems" for games are pretty custom, so I can't recommend an exact way of doing it, but it'd be better to save out the assets chosen by the player for each part and "load" them in from the file when resuming your game.

  • @molyporph1045
    @molyporph1045 4 года назад

    @BMo hey man, just a quick questions, how did u combine face changing options with "human head" like when u choose "eye patch or bandana" without proper setup, you lose head sprite completely.. it becomes transparent.. there is specific Head sprite in files, I'm just not sure how to combine both :)
    Great tutorial, thank you.

  • @arsenie96paul
    @arsenie96paul 4 года назад

    Hi, thanks for this tutorial. You specify at the end of the video that saving as new prefab is not the perfect way to do it. How would you suggest to save your customization? Do you have any tutorial for that? Thanks!

    • @beardordie5308
      @beardordie5308 4 года назад

      Definitely can't do it the way he showed because you won't be able to Build your game when using UnityEditor namespace/methods in your MonoBehaviours. You'd have to use PlayerPrefs to save/load the indices of each body part, or serialize your player gameobject using another save system.

  • @HappyMonotubs
    @HappyMonotubs 4 года назад

    awesome vid ngl

  • @МикитаЛисенко-д6к

    Fantastic lesson! But I would really like to see an improved version with JSON or XML serialization of saves 🙏🙏🙏

  • @respectculture9959
    @respectculture9959 3 года назад

    hey it did replaced the sprite, but spawn on different location, any idea how to fix it?

  • @ernestso-arq
    @ernestso-arq 4 года назад

    I need a code to change multiple pieces at the same time, like a button that changes the chest and two arms at the same time. You can help me with that?

  • @FiveTen007
    @FiveTen007 3 года назад

    what was that 2nd rpg shown in the intro

  • @PreslavKolev
    @PreslavKolev 3 года назад

    It doesnt work when i export the game. While the build it gives me an error.

  • @deagosane
    @deagosane 2 года назад

    could you not use overlayed sprites?

  • @fangola2.023
    @fangola2.023 3 года назад

    Hello Sir.i have a question to ask.i need to know how to implement this feature using scriptable object.if there is please tell me or refer me to one of the video that you think will help me.by the way your tutorial are the best.your implementation are easy to understand and straightforward.thank you very much.🙏🙇

  • @kitkat29702
    @kitkat29702 4 года назад

    Hey this video was great and helped me out ALOT, thank you! I have a question, when I press the randomiser button it will only randomise once, how can I fix this please? X

  • @michaeltorruella188
    @michaeltorruella188 3 года назад

    I've followed this and it works fine. I'm trying to add my own assets to the system but when I do then it only uses the animations on the first set of sprites. They revert back to the origin and stay there. When the original sprite is cycled in it animates like normal. How would I ensure that the animations are continued across all sprites?

  • @rdev3720
    @rdev3720 4 года назад +1

    When you buld the game it says that prefab utility doesnt exist in current context

    • @beardordie5308
      @beardordie5308 4 года назад +1

      Correct. The way he showed uses UnityEditor namespace, which is not allowed in a build. so to save your character with customization, you'll have to use PlayerPrefs or another serialization system to save and load your options.

  • @cardsatanywhere363
    @cardsatanywhere363 2 года назад

    Hello mate, I'm on unity ver. 2020.3.12f1 and I followed the video I believe quite well, however, despite my best efforts the sprites won't change when I click the buttons

  • @emilcargallerydk
    @emilcargallerydk Год назад

    Would it be possible to use a spritesheet for each bodypart, instead of animating the movements of the bodyparts? This would make more sense in a game using pixel art right?

  • @TransGuyShane
    @TransGuyShane 3 года назад

    Any chance you would make a shop tutorial?
    I'm making a game for my niece and she will be able to swap currency she collects in game to buy customisation options to "Dress up" the character.
    But I suck at coding and could use a good tutorial 🙂
    (My niece is 4 , this is a long term project)

  • @williamallen6382
    @williamallen6382 4 года назад

    how would you write a script so that a button can change swap between multiple sprites at once? Like swapping three sprites that make up a pair of shorts

  • @rickyc1991
    @rickyc1991 4 года назад

    Hello BMo, thanks so much for your tutorial, it's exactly what I was looking for.
    Would it still be possible to achieve the customizations with a single sprite sheet for 2D pixel games?

    • @FuzunRobot
      @FuzunRobot 4 года назад

      Hey! Here is how Stardew Valley approach this (it is a lot of work): www.spriters-resource.com/fullview/81210/

  • @LTXN
    @LTXN 4 года назад +1

    I have got an error that says PrefabUtitlity does not exist in the current context

    • @LTXN
      @LTXN 4 года назад

      fixed it

    • @StickyLabDev
      @StickyLabDev 4 года назад

      @@LTXN how -_-

    • @rdev3720
      @rdev3720 4 года назад

      how did you fix ittttttttttttttt plz heeeeeeeeeeeelp

    • @LTXN
      @LTXN 4 года назад

      Fix what that error

    • @rdev3720
      @rdev3720 4 года назад

      the error saying prefab utility does not exist i am struggling with this error for 5 days if you could help it would be greatly appreciated