Search Unity

Ultimate Selector [Old Character Selector +]

Discussion in 'Assets and Asset Store' started by Malbers, Aug 18, 2017.

  1. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    Hi guys I'm working on a huge update of the Character Selector+, and this update has made me re-brand the asset to Ultimate Selector since is no longer just a character selector , it can b used on many Selection Systems so here is what i have so far:

    Documentation





    this is the link for the Selector
    https://www.assetstore.unity3d.com/en/#!/content/55454?aid=1100lHT6


    This thread is created to support all Ultimate Selector users...

    Cheers
    Malbers!
     
    Last edited: Jan 9, 2018
  2. Rusted_Games

    Rusted_Games

    Joined:
    Aug 29, 2010
    Posts:
    135
    Amazing update!!! good work
     
    Malbers likes this.
  3. VladimirGameStudio

    VladimirGameStudio

    Joined:
    Jul 31, 2016
    Posts:
    111
    We already have the abandoned project, Horse Animset Pro
     
  4. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    How come? do you abandon it why?
     
    TeagansDad likes this.
  5. BackwoodsGaming

    BackwoodsGaming

    Joined:
    Jan 2, 2014
    Posts:
    2,229
    Horse Animset Pro wasn't abandoned. v3 is a paid upgrade. If you choose not to upgrade, you will see deprecated in your assets for v2, but that is your choice... @Malbers put a lot of time and cool updates in v3. In my opinion, the upgrade price is low compared to the amount of work that went into v3. It is definitely NOT abandoned. :)
     
    TeagansDad likes this.
  6. VladimirGameStudio

    VladimirGameStudio

    Joined:
    Jul 31, 2016
    Posts:
    111
    no no. I wonder if this abandoned Horse Animset Pro v3, because as trello is not updated and I see a new asset, I ask.
     
    Malbers likes this.
  7. BackwoodsGaming

    BackwoodsGaming

    Joined:
    Jan 2, 2014
    Posts:
    2,229
    Nope.. This is different asset all together. :) Sorry I misunderstood what you were saying. Horse Animset Pro still has the same thread. I don't think @Malbers did a new forum thread for v3. :)
     
  8. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    I'm taking care of the other assets I had a bit behind, like the old selector.
    I'm upgrading the Animal script with the next poly art animal which the horses uses too(increasing performance and adding more AI functions to work better with nav mesh agents) , next I'm going to update the little dragons while working on the big dragon and then go back to the horse..

    I need to take care all my assets and they keep growing an I'm just one person (my college just model and texturize the new creatures I do everything else)

    I hope you understand.
     
    Last edited: Aug 23, 2017
  9. stuarteve

    stuarteve

    Joined:
    Sep 19, 2012
    Posts:
    4
    Hi Malbers

    I love this asset - and the new update looks amazingly useful - thanks for all the hard work! I wanted to use this in a mobile situation, so was wondering how I link the open/close selector to a button instead of a key press? Also I want to make sure I can drag the objects in the selector and then tap on them to select and spawn - rather than using the Left and Right Mouse clicks. Do you have a sample scene for that? Or can you tell me what settings I need?

    Thanks for the help.
     
  10. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    Hi there Stuart! thanks so much for your kind words

    Im using Unity Event system .. so all mouse stuffs are working as touch/swipe on mobile.

    to Close the Selector and open it with a button you just need to create a button and connect the OnClick Event to the function ToogleSelector() of the Selector manager:
    upload_2017-8-25_9-27-50.png

    I commented all the public functions on the Manager, Editor, Controller, and items selector that you can use with Unity Events like the ones with OnClick on the buttons :)

    In most of the scene samples you can drag/swipe with the mouse/touch and select with click/touch...

    if you want to create Buttons arrows for mobile you can connect those buttons to these Functions on the Selector Controller: SelectNextItem(bool) true = Next, false= before
    upload_2017-8-25_10-18-8.png

    if you want to close the selector when you select something you can do this:
    on the Selector manager, using the OnSelected event: Enable Selector on false..
    upload_2017-8-25_10-15-21.png

    that will close the selector as soon as you select something.


    Hope that helps..

    I have pending update the Documentation and make tutorials for this assets ;)
     
    LoDx likes this.
  11. LoDx

    LoDx

    Joined:
    Feb 13, 2013
    Posts:
    67
    Hi @Malbers ,
    Nice asset, been using it since Character Selector+ .
    Nevertheless, with the update to Ultimate Selector, I notice that it somehow has hog up the RAM usage.
    - the memory just keep piling up, if I were to let the demo scene running, it would eventually eat up all my PC RAM.
    my PC spec & Unity ver :-
    - Unity3D 2017.1.0f3
    - PC spec :- Window10 64-bit, 16G Ram.

    I imported the asset Ultimate Selector into a new project, and just run the demo scene.
    - Open the Task Manager, and watch the Memory usage.
    - Stop the Scene, then play it again. Do it a few times, and you can see the memory doesn't clear, it just keep piling-up.
    - You can observe clearly that the memory usage just keep hogging up.
    - You can also just let the demo scene plays continuously, the result is the same, memory just keep piling-up.
    - In the attached screenshot, the memory usage already goes >5G , I had to stop it before it kill the PC .
    - If I were to just let the scene continue playing, it would eventually it goes over 10G+ of memory usage, which makes the PC usable ( near 'death', non-responsive ) , will have to terminate the process manually.

    Note :-
    - Asset imported as new fresh project. Nothing change upon importing the asset, just play/run the demo scene.
    - there is no other asset(s) imported, only Ultimate Selector.
    ultimateSelector-RAMusage.jpg

    Thanks
    James
     
    Malbers likes this.
  12. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    thanks so much for reporting this up... I will check it out and I'll let you know
     
    LoDx likes this.
  13. LoDx

    LoDx

    Joined:
    Feb 13, 2013
    Posts:
    67
    Hi,
    Appreciate your kind note. Wondering if there is any news/progress ?

    Thx
    James
     
  14. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
  15. LoDx

    LoDx

    Joined:
    Feb 13, 2013
    Posts:
    67
  16. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    I already reported the bug
    the thing is that I use one extra camera for the selector and the error happens when there's 2 cameras and and UI canvas.
    Im already working on some different solution. because the error doesn't show on unity 5.5.2 which is the one I use to upload the assets.
     
  17. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    I receive this @LoDx :

    Hello,

    We have fixed this problem and it should not appear in version 2017.2.0f1 (https://unity3d.com/unity/beta/unity2017.2.0f1).
    If you are still able to reproduce it on the latest version of Unity, please respond to this email.

    We highly appreciate your contribution. If you have further questions, feel free to contact us.

    Regards,
    Lina
    Unity QA
     
  18. LoDx

    LoDx

    Joined:
    Feb 13, 2013
    Posts:
    67
    Hi @Malbers ,
    I just tried it with 2017.2.0f1 . same occurrence.

    Specifically, the memory usage issue happens only on these demo scenes :-
    1. Characters Front
    2. Characters Grid
    3. Characters Right Radial

    Note :- the other demo scenes doesn't encounter the memory issue.
    ultimateSelector-u3d-2017-2-f1-RAMusage.jpg ultimateSelector-u3d-2017-2-f1-RAMusage1.jpg

    To reproduce :-
    - fresh import of Ultimate Selector assetpackage
    - Open any of these demo scene :-
    1. Characters Front
    2. Characters Grid
    3. Characters Right Radial
    Let it run ( or play/stop & play/stop..etc , you will see the memory usage keep pilling up.)

    From the observations, as the memory issue occurs only on the above 3 demo scenes, I 'think' the 'bug' probably not on unity side, it might be hidden in the asset's code.
    - Example :- this demo scene ( Chest Circular Animations ) use 2 camera too, but doesn't have the memory pilling up issue.

    Just my observations.
    Thanks
    James
     
  19. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    Thank so much James
    If is only on the characters demos then it should be something to do with the characters then,

    I will keep testing it out

    Thanks
     
  20. happydayss

    happydayss

    Joined:
    Jun 13, 2017
    Posts:
    8
    Hey Malbers, great asset love it! Im having a issue setting up the in game data as in linking my coin system to the asset (using playerprefs for saving) and dont understand how I will spawn the selected player after selecting. Is there a tutorial for the asset, I read the doc but didn't help my issue.
     
    Sangar-Zucchi and Nateply like this.
  21. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    Thanks happy! for your kind words

    Take a look to the Boxes Radial Example:

    To instantiate an item you just need to activate Instantiate item on the Selector Manager on the top of the hierarchy. upload_2017-10-7_23-53-2.png

    if your items have and original object that will get instantiated... if not, the same item will be the one instantiated..
    upload_2017-10-7_23-57-0.png

    they are two main events on the selector controller: the selected event(OnClick...) and the focused event:
    upload_2017-10-7_23-59-12.png

    the Select Event (OnClick/TouchAnItem) usually is set with the SelectorManager,SelectItem method... so the item that is on front (the focused one) gets selected and Spawn on the scene if the Instantiate option is active;
     
    Sangar-Zucchi likes this.
  22. happydayss

    happydayss

    Joined:
    Jun 13, 2017
    Posts:
    8
    Thanks Malbers everything works great, but a few problems. How do I make a default character, then spawn the default character every time until the player selects a character then that becomes the "default" spawn. Thanks for the help!
     
    Last edited: Oct 11, 2017
    Sangar-Zucchi likes this.
  23. LoDx

    LoDx

    Joined:
    Feb 13, 2013
    Posts:
    67
    Hi @Malbers ,
    just tested the Version: 2.01 (Nov 13, 2017).
    - unfortunately it still has same memory pilling up issue.

    *using unity 2017.1.1f1

    Thanks
     
  24. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    dammn it! but is only with the characters right? on any other scene its not happening?
     
  25. LoDx

    LoDx

    Joined:
    Feb 13, 2013
    Posts:
    67
    Hi @Malbers ,
    yep, so far it happens only on these scene :-
    1. Characters Front
    2. Characters Grid
    3. Characters Right Radial

    Thanks
    James
     
    Malbers likes this.
  26. Alan-Ward

    Alan-Ward

    Joined:
    Aug 26, 2012
    Posts:
    84
    Hi @Malbers,

    Firstly - a great asset you've produced here - exactly what I needed for my project, thank you!

    Is it possible to have two or more selectors in the same scene? I'd like to have a second selector activate with related choices when you've chosen something from the first selector. I could do it with separate scenes, but would prefer to keep everything on the same screen.

    Also, I'm experiencing a couple of small issues with animations if you start dragging the items, but release quickly and stay on the same focussed item :

    1. If I animate an item to move when focused, e.g towards the camera, sometimes it moves the whole selector/items instead the opposite way, e.g away from camera.

    2. The item briefly glitches back to it's focussed position when you release the swipe, before continuing the smooth animation. This happens in the demo scenes e.g.Front Radial Animals, Characters Right Radial, etc.

    Good news though - I think I've found a fix for 2! I hope you don't mind me posting - I added "&& IsAnimating" to the _PlayAnimationTransform method in the SelectorController CallBacks.cs script - Line 3 below. Seems to fix the glitching issue, but not the other items moving problem 1.

    Code (CSharp):
    1.           //This is used for Finishing the previous animation if a new  animation is being called
    2.             if (LastAnimation && CurrentItem && LastAnimatedItem &&
    3.                 CurrentItem == LastAnimatedItem && IsAnimating)
    4.                 EndAnimationTransform(LastAnimatedItem, LastAnimation);
    Cheers.

    PS - This is with 2017.1.1f1
     
    Last edited: Nov 27, 2017
    Malbers and Astx like this.
  27. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    Hi there guys!!

    Sorry for being away for two weeks I was visiting my family on Cuba but Im back and with a ton of work done!
    I will be uploading the new updates for all my assets this week....

    which will include a bunch of demo scenes , and ready to use integration with HAP3 for all the poly art animals and little dragons.. so you don't have to make any weavy work :)

    also I will be working on the documentation for all my scripts so you can understand better what I have being done :)

    Cheers
     
  28. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    I haven't tried to have 2 selectors on the same scene but I will definitely work on that for the next update!
     
  29. Alan-Ward

    Alan-Ward

    Joined:
    Aug 26, 2012
    Posts:
    84
    Hi @Malbers ,

    Great to see the update thanks! Regarding the two selectors in one scene - if, for example, I have two linear selectors, swiping affects both selectors together. How would I go about making each selector respond separately to screen touches/swipes?

    Thanks,
    Al.
     
    Malbers likes this.
  30. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    Thank you!

    I need to make an update to include swapping areas, for now only work on Non swapping selectors :D
     
  31. Alan-Ward

    Alan-Ward

    Joined:
    Aug 26, 2012
    Posts:
    84
    Just FYI, I've managed to get a solution together with code help from this thread and a bit of camera viewport positioning.

    I have two linear selectors set up so that each has it's own viewport on a portion of the screen, not the whole screen: Selector 1 at the top, Selector 2 in the middle, without overlapping.

    I grab a reference to the scene's Main Camera, _mainCam, in the selector's Awake() method.

    I then do boolean checks that start position of any swipe is in the selector's viewport by passing the method below the start mouse/touch position (screenPos) and the selector camera (local_cam).

    I do the boolean check for the MainInputDown (after grabbing the MouseStartPosition), MainInputPress and MainInputUp conditions of the SelectorControllerLogic.cs script. Solo selections work as before :)


    bool PositionInViewport(Vector2 screenPos, Camera local_cam)
    {
    return local_cam.rect.Contains(_mainCam.ScreenToViewportPoint(screenPos));
    }


    I've only tested this with linear selectors but seems to work great... :)

    2SelectorExample.gif

    Cheers,
    Al.
     
  32. jarodkitchen

    jarodkitchen

    Joined:
    Oct 15, 2017
    Posts:
    4
    Hello @Malbers,

    I recently purchased your Ultimate Selector (a great product, BTW!) , and I'm trying to adapt its MaterialChanger component to better suit my needs. My game uses 2D bone-rigged characters that have a large number different skinnable body parts (at least 32). I want to use your component as a way for my players to customize their avatars with, as well as a method of skinning the game's non-player characters.

    With the current component, I must add a long list of the same material assets to each of the 32 skinned meshes. What I would like to do is to modify the component so that each of the meshes will set its material using a single "master list", instead of its own serialized list.

    I'm finding that this functionality is critical to my project workflow. Ideally, I'd like to for MaterialChangerEditor to allow me to add the master list of materials at the top of the component, which the MaterialChanger mesh list then references with its SetAllMaterials methods (EDIT: Even better would be an option to default to the master list or use individual lists, but I think I could figure out that further implementation if I had the master list working). If this feature change is a relatively simple one, could you give me some guidance as to which scripts to modify and how? I have made a few attempts on my own, but I seem to keep breaking things.

    Thanks,
    Jarod.
     
    Last edited: Mar 21, 2018
    Malbers likes this.
  33. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    Hi Jarod, first thanks for the purchase!

    The material Changer was tough to change the material on the parts of a character...
    for example the deer:
    upload_2018-3-21_11-38-25.png

    Now as for your request?
    you said that you have 32 meshes .... but from what I understand you don't want to create a list of 32 items ... because I believe some of those 32 meshes use the same material..
    I mean you have two arms and you want to change the materials on the two arms at the same time right???

    For that you can enable LODs and add the other meshes there :)

    is that what you wanted??
     

    Attached Files:

    Last edited: Mar 21, 2018
    jarodkitchen likes this.
  34. jarodkitchen

    jarodkitchen

    Joined:
    Oct 15, 2017
    Posts:
    4
    Aha! I think I understand it now. I wasn't quite sure what the LOD option was for, but it makes sense from your example image. Yes, I believe that is exactly the functionality I was looking for... staring me right in the face this entire time!

    Sorry for my misunderstanding. And thank you very much for your speedy reply.

    - Jarod
     
    Malbers likes this.
  35. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    No problem :)

    if you have any other question please let me know !

    Cheers
    Malbers
     
  36. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    Hi guys here's a little tutorial for the character selector using the Poly Art animals


    Here's also the Empty selector prefab used for it..


    Hope that helps
     

    Attached Files:

    Alan-Ward likes this.
  37. qeneric

    qeneric

    Joined:
    Feb 18, 2018
    Posts:
    14
    Hey malbers, How do i change the character in multipe other scenes?
    Thanks.
     
  38. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    you mean like send the selected character from a scene to another?
     
  39. qeneric

    qeneric

    Joined:
    Feb 18, 2018
    Posts:
    14
    Yes
     
  40. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    when you select and item/character the OnSelected event is invoked and returns the the selected item/character.... you can connect that event to a script so you can send the character to a new scene :)
    upload_2018-4-5_11-21-49.png
     
  41. qeneric

    qeneric

    Joined:
    Feb 18, 2018
    Posts:
    14
    Thanks!
     
  42. qeneric

    qeneric

    Joined:
    Feb 18, 2018
    Posts:
    14
    I cant figure out how to make a scirpt that does that :(
     
  43. qeneric

    qeneric

    Joined:
    Feb 18, 2018
    Posts:
    14
    This is a amazing asset but when i set on selected on a solo object it doesnt work
     
  44. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    One solution can be to set the selected/Spawned object on DontDestroyOnLoad Or the Selector itself

    I will take a look and let you know
     
  45. qeneric

    qeneric

    Joined:
    Feb 18, 2018
    Posts:
    14
    Ok ill wait.
     
  46. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    Hi @Zinvy
    I made some small adjustments to the Selector Manager

    Now you can Keep the Selector and the Selected item on Don't Destroy OnLoad()

    That will maintain both gameobjects live when changing scenes..

    upload_2018-4-12_10-53-35.png


    I will be uploading the update to the store soon
    but meanwhile here's the fix
     

    Attached Files:

  47. qeneric

    qeneric

    Joined:
    Feb 18, 2018
    Posts:
    14
    Thanks!
    Amazing support!
     
    Malbers likes this.
  48. qeneric

    qeneric

    Joined:
    Feb 18, 2018
    Posts:
    14
    How do i add coind to the data
     
  49. Malbers

    Malbers

    Joined:
    Aug 7, 2015
    Posts:
    2,558
    Can you explain a bit further?
    How to Add coins to the data you mean like adding more coins to the total amount?
    You can access to all the public properties of the Data... like coins and modify that value
     
  50. Alan-Ward

    Alan-Ward

    Joined:
    Aug 26, 2012
    Posts:
    84
    Hey Malbers, is it possible that a selector could have momentum when you release a swipe/drag above a certain speed - ie keeps moving and decelerates before locking on an item? Would that be difficult to implement?
    Thanks!