2D CHARACTER CUSTOMIZATION in Unity Tutorial

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

КОМЕНТАРІ • 252

  • @martinsky7748
    @martinsky7748 4 роки тому +109

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

  • @laggard31
    @laggard31 4 роки тому +26

    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.

  • @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.

  • @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!

  • @CapsCtrl
    @CapsCtrl 3 роки тому +23

    Thank you, this was very helpful

    • @CapsCtrl
      @CapsCtrl 3 роки тому

      @Judah Luke scam

  • @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.

  • @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

  • @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!

  • @jonahschmidt8912
    @jonahschmidt8912 3 роки тому +3

    The start was exactly my thought proccess

  • @dwight3555
    @dwight3555 3 роки тому +3

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

  • @ZLGaming140
    @ZLGaming140 4 роки тому +32

    In PreviousOption()
    Please change "if (currentOption

    • @williamallen6382
      @williamallen6382 3 роки тому +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

  • @KyleCook-y8m
    @KyleCook-y8m 8 днів тому

    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!

  • @mrfish6846
    @mrfish6846 2 роки тому +1

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

  • @joaohoffman5613
    @joaohoffman5613 4 роки тому +4

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

    • @BMoDev
      @BMoDev  4 роки тому

      Nice! Hope it helps :)

  • @TransGuyShane
    @TransGuyShane 3 роки тому +1

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

  • @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

  • @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!

  • @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

  • @Ainzworth269
    @Ainzworth269 4 роки тому +9

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

  • @sneedsfeedandseed2
    @sneedsfeedandseed2 4 роки тому +5

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

    • @BMoDev
      @BMoDev  4 роки тому +1

      Np, happy to hear!

  • @JasinDow
    @JasinDow 4 роки тому +3

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

    • @BMoDev
      @BMoDev  4 роки тому +1

      Thanks for the kind words!

  • @МемМемовен
    @МемМемовен 2 роки тому +1

    Thank you, you deserve a lot more subscribers!

  • @shulkforlife2683
    @shulkforlife2683 4 роки тому +2

    Really good video man, your tutorials are incredible

  • @willsonx7754
    @willsonx7754 4 роки тому +1

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

    • @BMoDev
      @BMoDev  4 роки тому

      Appreciate it 🙏

  • @GoMan-21
    @GoMan-21 4 роки тому

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

  • @AveryLiligant
    @AveryLiligant 2 роки тому

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

  • @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

  • @dmmarch7185
    @dmmarch7185 Рік тому

    Really cool video for studing, thanks

  • @pfp4ever
    @pfp4ever 4 роки тому

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

  • @delta_mayur
    @delta_mayur 3 роки тому

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

  • @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 💘

  • @kolinha
    @kolinha 3 роки тому

    Hi! Brazilian here! Good tutorial sz

  • @qy4036
    @qy4036 4 роки тому

    Thanks for this tutorial it's really helpful!

  • @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!

  • @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.

  • @willofthemaker
    @willofthemaker 4 роки тому +1

    Fantastic! New channel to binge

  • @Tarazed609
    @Tarazed609 2 роки тому

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

    • @BMoDev
      @BMoDev  2 роки тому +1

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

  • @dandragomir6413
    @dandragomir6413 3 роки тому

    Thank you very much! Very good tutorial!

    • @BMoDev
      @BMoDev  3 роки тому

      🙏Thanks friend, appreciate it

  • @nijatmammadov8509
    @nijatmammadov8509 3 роки тому

    Thanks, very good explanation!

  • @WorldAquariumSingapore
    @WorldAquariumSingapore Рік тому +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?

  • @CeylonGameDev
    @CeylonGameDev 3 роки тому

    Thank you, it was so helpful 💙

  • @adamhilali806
    @adamhilali806 4 роки тому +2

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

  • @Schrient
    @Schrient 3 роки тому +1

    Very useful. Thanks!

  • @jakeduncan2721
    @jakeduncan2721 4 роки тому +1

    Noice tutorial. Like the outro music too

  • @thatsmaik
    @thatsmaik 3 роки тому +1

    Awesome, thanks.

  • @thananjaijongrak7604
    @thananjaijongrak7604 3 роки тому

    Nice tutorial, thanks.

  • @misli_kraba
    @misli_kraba 4 роки тому

    Informative and fun. Thanks a lot

  • @artwhirl3517
    @artwhirl3517 4 роки тому

    Nice video bro it helped a lot

  • @iowoigames
    @iowoigames 4 роки тому +1

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

  • @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

  • @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

  • @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.

  • @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.

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

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

  • @christophergibson3846
    @christophergibson3846 2 роки тому

    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.

  • @Asif-ze5hp
    @Asif-ze5hp Рік тому

    Great tutorial

  • @anan_dayo
    @anan_dayo 3 роки тому +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

  • @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.

  • @leinardesteves3987
    @leinardesteves3987 7 місяців тому

    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

  • @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?

  • @blackchristgaming
    @blackchristgaming 3 роки тому +1

    Perfect

  • @gmielli1281
    @gmielli1281 3 роки тому

    u saved ma life

  • @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!!!!!

  • @kross8755
    @kross8755 4 роки тому

    Man that it what i need! thx!

    • @BMoDev
      @BMoDev  4 роки тому +1

      Glad it could help!

  • @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..

  • @Ivan_Helsing
    @Ivan_Helsing 3 роки тому

    Thanks a lot!

  • @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?

  • @JoséCanteros-k1n
    @JoséCanteros-k1n 3 місяці тому

    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?

  • @georgegreaves8382
    @georgegreaves8382 3 роки тому

    Any advice for using this in a buid? obviously can't use prefab utility and I'm not sure what I'm doing with Json or Xml.

  • @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.

  • @vdwhite687
    @vdwhite687 Рік тому

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

  • @ethanwilkes2578
    @ethanwilkes2578 4 роки тому

    can you use something like this method and import weapons that have unique animations? So like a flaming sword that has embers coming off the blade. Or would you have to do something else since sprite renderers can only display still images?

  • @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.🙏🙇

  • @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?

  • @diernori
    @diernori 2 роки тому

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

  • @arsenie96paul
    @arsenie96paul 3 роки тому

    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 3 роки тому

      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.

  • @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

  • @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)

  • @zendraw3468
    @zendraw3468 Рік тому

    this is fine, but what about changing animated spritesheets

  • @Moosey31
    @Moosey31 4 роки тому

    awesome vid ngl

  • @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?

  • @junhyeokjeon815
    @junhyeokjeon815 2 роки тому +1

    1:55 XD

  • @banirolls
    @banirolls 2 роки тому

    I wish more teachers were like you :

  • @TheFibrewire
    @TheFibrewire 3 роки тому

    ty so much

  • @marka.alvareznieves9213
    @marka.alvareznieves9213 4 роки тому

    id like to control multiple characters at once. id have them on and item bar that i can switch between them to using numbers and/or my mouse scroll wheel. each character will be active in whatever position they are in the world. i simply wish to click on the one i want to control and select where they will go with path finding. i got path finding down (i think). i was hoping if you could help me?

  • @williamallen6382
    @williamallen6382 3 роки тому

    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

  • @PauloCarvalho-s8k
    @PauloCarvalho-s8k 11 місяців тому

    It's only on Edit mode, have a metod to use the same plan in a build?

  • @ivanm71
    @ivanm71 2 місяці тому

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

  • @respectculture9959
    @respectculture9959 3 роки тому

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

  • @humanetiger
    @humanetiger 3 роки тому

    I was following your tutorial and adaped your example for changing my hero characters head part. It basically works - the head sprite is changing according to my selection. However, the animation for the original head part gets lost / stops as soon as I am doing that change. All other parts of my character still animate, but the head doesn't. In this case under Bones a warning "Sprite has no bind poses" pops up - so I think some extra "hidden" bones binding information is needed when chaning a sprite - but how do I add this one if it doesn't exist?

  • @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

  • @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 3 роки тому

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

  • @jonathanbarone1257
    @jonathanbarone1257 Рік тому

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

  • @abdulkadirdursun6072
    @abdulkadirdursun6072 4 роки тому

    Great video. Thank you.

  • @FiveTen007
    @FiveTen007 3 роки тому

    what was that 2nd rpg shown in the intro

  • @KpuZhino
    @KpuZhino Рік тому

    How can I do the same but from a JSON file?

  • @deagosane
    @deagosane Рік тому

    could you not use overlayed sprites?