Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

LEAN ⚡️ Touch / GUI / Texture / Localization / Transition / Pool

Discussion in 'Assets and Asset Store' started by Darkcoder, Aug 1, 2019.

  1. movifa

    movifa

    Joined:
    Apr 15, 2019
    Posts:
    1
    Guys, I have problems with the Lean Localization asset, in my game there are arrays of text and sounds, I understood through the website how to translate the UI, but how to replace the text and voice acting inside the code is not yet clear
     
  2. crdmrn

    crdmrn

    Joined:
    Dec 24, 2013
    Posts:
    152
    @Darkcoder how does one assign a font to use with a translation?
    My guess is that it needs to be in the translation CSV, but there's no example on how it should be formatted nor it is explained in the documentation :S
     
  3. Darkcoder

    Darkcoder

    Joined:
    Apr 13, 2011
    Posts:
    3,404
    There's currently no direct way to do this, mainly because it's not always easy to know when you actually 'start' a certain gesture. It's possible to set up your scene to have any number of gestures, and even by touching the screen you can activate many components at once.

    That said, the LeanGestureToggle component (Lean/Touch+/Examples/TransformToggle) can enable/disable components based on which of the three (drag, pinch, or scale) gestures you perform first beyond the specified threshold. Although this component doesn't provide any events, you could modify the code or make a custom component that fires events when enabled or disabled.


    This is implemented in LeanTouch+ via the LeanFingerFlick component ("Lean/Touch+/Examples/Swipe/11 Finger Flick" demo scene). If you don't have LeanTouch+ then you'll have to implement it yourself based on LeanFingerSwipe :)


    Very nice. This is something I considered, as well as making the transitions themselves just store the get/set MethodInfo or FieldInfo. However, this wouldn't work for all transition types, and I 'lean' toward keeping the code more consistent. In the case of an event based transition like this, it would indeed allow most component settings to be transitioned, but it would also lead to two different transition workflows. Some components also have settings that may appear to work the same as others, but in fact work differently and would require a custom inspector or C# knowledge to understand why it doesn't work.


    You need to modify the assembly definition file (e.g. Lean/Touch/LeanTouch.asmdef) to reference the Chinemachine assembly.


    You can get objects like audio from code with: var audioClip = LeanLocalization.GetTranslationObject<AudioClip>("name"), and text via: var text = LeanLocalization.GetTranslationText("name");

    You can set up AudioClips and other Objects the same way in the LeanPhrase inspector by going to the Object tab and dropping them in.


    CSV can only store text, no fonts or other objects. To make a per-language font you just need to make a LeanPhrase (like in the "06 Renderer" demo scene), drop your fonts into each language on the Object tab. You can then add the LeanLocalizedTextFont component to your UI Text (or LeanLocalizedTextMeshProUGUIFont component if you install the TMP package).
     
  4. crdmrn

    crdmrn

    Joined:
    Dec 24, 2013
    Posts:
    152
    That doesn't seem to sort any effect; also the Sprite button on the LeanPhrase component doesn't change the view :S
    Besides "LeanPhrase" is a very misleading name for this component if it's supposed to work the way you just desribed it ^^"
     
  5. Darkcoder

    Darkcoder

    Joined:
    Apr 13, 2011
    Posts:
    3,404
    The Sprite tab changes the UnityEngine.Object field into a UnityEngine.Sprite field, which is important because Unity treats the parent Texture2D in a special way when it contains a sprite sub-object, and you attempt to drag it into a Sprite field. I 'could' make it Text and Object tabs only, but then it would be a very painful user experience.

    As for the naming, it originally only supported text. Not sure what else I could name it though.
     
  6. el_Guero

    el_Guero

    Joined:
    Sep 15, 2017
    Posts:
    185
    Cool. I do have LeanTouch+ and will give it a spin. Thanks for your reply.
     
    Darkcoder likes this.
  7. crdmrn

    crdmrn

    Joined:
    Dec 24, 2013
    Posts:
    152
    That's not what I meant. What I meant is that the custom inspector that I guess manages the look seems not to work properly, as the objects entered in the Object tab are shown in the sprite one too.
    a.PNG b.PNG

    What about LeanCustomLocalizedObject or something like that; it just need to be more clear that it's not only used to localize phrases ^^"
     
  8. Darkcoder

    Darkcoder

    Joined:
    Apr 13, 2011
    Posts:
    3,404
    1 - That's just how Unity's ObjectField inspector works.

    2 - But then it makes it sound like it doesn't support text any more :D Anyway, I can't rename stuff like this or people get mad.
     
  9. Darkcoder

    Darkcoder

    Joined:
    Apr 13, 2011
    Posts:
    3,404
    Hey everyone,

    I'm proud to announce the release of two new assets in the Lean series:



    Lean Texture allows you quickly modify textures in your project with a range of filters, pack them together into channels, and much more!
    > Get Lean Texture <

    Recent versions of Unity use many new shaders/materials that require special textures that have different data packed into each channel (e.g. you may be familiar with the RGB = Albedo, A = Smoothness texture). This 'channel packing' idea means the shader/rendering can run much faster, but it also means these textures are very difficult to create and maintain without a dedicated tool.

    Although the scenario I describe above is already covered by some assets on the store, there are also many times where you want to perform minor modifications to these textures (e.g. adjust brightness, color). I don't think there is anything out there that fills both of these roles very well, especially when it comes to being lightweight/lean, and integrating with Unity's existing tools.

    Therefore, I developed Lean Texture, which allows you to both pack textures, and/or make modifications all with just a few clicks. Quite literally:
    1. Select your existing texture (or multiple textures if you want to pack them into channels).
    2. Right click it, and select the Create > Lean > Texture option.
    3. Adjust the settings and/or add the desired filters.
    4. Click Save.

    If you need more advanced texture filters then you may be interested in Lean Texture+



    Lean Texture+ is an extension to Lean Texture, adding many new types of texture modification tools!
    > Get Lean Texture+ <

    This allows you to convert textures to be seamless, convert height or color textures into normal maps, and many other more advanced modifications. I have many plans for new filters, and I'm sure many other users do too, so this paid version helps fund that. The free version should be a welcome addition to everyone's toolset though, just like Lean Touch has been.

    NOTE: Anyone who has previously purchased my (now deprecated) Sprite Packer asset will automatically get a free copy of Lean Texture+!

    Enjoy :)
     
  10. atomicjoe

    atomicjoe

    Joined:
    Apr 10, 2013
    Posts:
    1,869
    Hi! I'm checking out Lean Texture.
    Does the channel packer use the original image files (without texture compression) to output the packed final texture or does it use the images as imported by Unity? (and thus inheriting any compression artifacts the texture may have when imported)
    Thanks :)
     
  11. Darkcoder

    Darkcoder

    Joined:
    Apr 13, 2011
    Posts:
    3,404
    Currently it copies the loaded Texture2D, thus including compression. I will very soon make it directly read the texture file for in-editor use, and only use the current approach for runtime and as a fallback. There are quite a few other features I plan to include, but if I added them all then this would never get released :D

    I've already got a few important fixes in the pipe for the next version (like supporting linear color space, oops). Perhaps this direct loading will appear in the next-next version.
     
    atomicjoe likes this.
  12. atomicjoe

    atomicjoe

    Joined:
    Apr 10, 2013
    Posts:
    1,869
    I love your Lean series man! ;)
     
    Darkcoder likes this.
  13. Darkcoder

    Darkcoder

    Joined:
    Apr 13, 2011
    Posts:
    3,404
    Hey everyone,

    Version 1.0.1 of Lean Texture is now out:
    • Fixed preview RGB isolation not working for Preset = ColorPlusTransparency.
    • Fixed preview RGB isolation not working for Preset = LineColorPlusTransparency.
    • Fixed color shift in linear color space.
    • Fixed half pixel offset from texture sampling.
    • Fixed compression settings not being copied to exported texture.
    • Centered preview texture.
    • Textures loaded in-editor are now directly loaded from file in an uncompressed form if they're originally .png or .jpg.

    Version 1.0.1 of Lean Texture+ is now out:
    • Updated Lean Texture base code.
    • Added 'Then Resize' filter.

    I managed to sneak in direct loading of textures from files. I still need to add some kind of texture caching so it generates quicker and uses the GC less though.

    Enjoy :)
     
    atomicjoe likes this.
  14. atomicjoe

    atomicjoe

    Joined:
    Apr 10, 2013
    Posts:
    1,869
    You're great! :D
     
    Darkcoder likes this.
  15. tonygiang

    tonygiang

    Joined:
    Jun 13, 2017
    Posts:
    71
    Hey! Bug report for Lean Transition, potentially Lean GUI! If I use a 0-duration LeanEvent to begin another transition, Lean Transition will run into a "Failed to submit all methods" error. This includes cases where I call LeanToggle.TurnOn from a 0-duration LeanEvent, if that LeanToggle has an On transition. For now, I observe no faulty behavior when Lean Transition runs into this error, but a glance over the source code reveals that the error code path will call ResetState. I don't know what this does and there may be some side effect from this error that I'm not aware of.

    Entering the .NET's Single Epsilon number into LeanEvent's duration is the current workaround to avoid any potential side effect.
     
    Last edited: Aug 4, 2021
  16. Darkcoder

    Darkcoder

    Joined:
    Apr 13, 2011
    Posts:
    3,404
    I can replicate the issue. The issue is that before a component registers transitions (e.g. LeanToggle), it checks to see if the LeanTransition state has been reset (e.g. no dangling JoinTransition, or transitions pending registration). Since this event is executed in the middle of transition registration, the state isn't clean and therefore it thinks the current state is invalid and it resets it before continuing. When you add a delay like this, it causes the registration of the nested transitions to occur on the next frame, so there is no conflict.

    I could fix this by storing the transition call stack, and any transitions that aren't the root will skip doing this check and skip resetting the state. I'll see what I can do for the next version.
     
  17. JohnnyFactor

    JohnnyFactor

    Joined:
    May 18, 2018
    Posts:
    343
    I think I found a bug in a demo scene called "18 Popup" from Lean GUI. Hovering the mouse right in the middle of the "pizza" button causes the popup to jump from top to bottom each frame.
     
  18. BillDNA

    BillDNA

    Joined:
    Jun 3, 2014
    Posts:
    7
    What Am i doing wrong with the join transition?

    So I have two Animations (On and Off). the 'On' animation work as expected with the first two pivot.x transitions happening at the same time, then the transition (scale) happening; however the 'Off' animation plays all three at the same time.

    On Animation
    Screen Shot 2021-08-09 at 12.13.07 PM.png
    Off Animation
    Screen Shot 2021-08-09 at 12.14.04 PM.png
     
    Last edited: Aug 9, 2021
  19. Malveka

    Malveka

    Joined:
    Nov 6, 2009
    Posts:
    191
    Hello. I recently started making use of LeanTouch. I'm finding it very easy to apply to my project. Great work with making it easy to integrate!

    In my experimentation I'm seeing an issue with the stability of pinch scaling and twist rotation. For me this issue is present even in the example scene called "13 Transform". It works fine in the editor using the LeanTouch touch simulation, but when I create a build and run it on a Windows 10 all-in-one system with a touchscreen, the scaling and rotation gestures are sometimes jerky, resulting in an instantaneous change to an undesired scale/rotation. Also, picking fingers up and placing them down again can have the same result, where there is a big change to the scale/rotation when the second finger lands for the pinch/twist gesture.

    If I keep my thumb on the screen and lift my forefinger and place it down again (as close as possible to the position from which I lifted it) the objects will continually shrink each time I do this, until they are the size of points.

    I can provide more info on this behavior and a video if needed, but I wanted to check first and see if this is some known behavior in certain environments.
     
  20. Darkcoder

    Darkcoder

    Joined:
    Apr 13, 2011
    Posts:
    3,404
    This happens because the LeanTooltip.Move/Boundary = Pivot setting flips the pivot if it goes out of bounds, and your game window must be smaller than the size of the tooltip when flipped either way, causing it to constantly flip. In the next version I'll make it revert to Boundary = Position when this happens.


    This looks fine, and I can't replicate it as seen in the attached scene (uses Lean GUI).


    Hmm, a video would be nice as I don't have a windows touchscreen. Lean Touch uses the raw finger data Unity provides, which may be too sensitive for certain gestures. Lean Touch+ comes with the LeanSmoothedValue and LeanDelayedValue components which can be used to mitigate this in such scenarios. It sounds like you may be describing something different though, it's hard to say.
     

    Attached Files:

  21. BillDNA

    BillDNA

    Joined:
    Jun 3, 2014
    Posts:
    7
    So I'm Experiencing this intermittently (some animations work as expected and some trigger all at once not respecting the lean join). Could it be that I'm using the copy component functionality, or using the move component up / down? If I reload Unity it seems to fix the problem.
     
  22. JohnnyFactor

    JohnnyFactor

    Joined:
    May 18, 2018
    Posts:
    343
    Any chance of adding a dropdown to LeanGUI? The built-in dropdown is driving me crazy and I can't find a decent replacement on the store.
     
  23. Malveka

    Malveka

    Joined:
    Nov 6, 2009
    Posts:
    191
    Here are links to two videos which show the kind of behavior I'm seeing. They are rough, but hopefully will give you the idea. If you think the Smooth/Delay components in Lean Touch+ will address these behaviors then I will gladly acquire it and give it a try. Thanks for your help!



     
  24. Darkcoder

    Darkcoder

    Joined:
    Apr 13, 2011
    Posts:
    3,404
    That might be the issue, but it's hard to say without exact steps for me to reproduce this. It may also be a conflict between different transitions, since running the same transition method on the same Target will cause the previous transition to be skipped.


    What's wrong with the built in one?


    This looks more like a bug with the LeanPinchScale component than an issue with finger smoothing. I'll check it out.
     
  25. JohnnyFactor

    JohnnyFactor

    Joined:
    May 18, 2018
    Posts:
    343
    Lack of a default label. It's been raised many times over the years but Unity doesn't seem interested in fixing it.

    The first list entry is always automatically selected rather than some default text like "Please Choose...". Various odd hacks have been invented to get around it but they all have problems of some sort and it's not an elegant solution anyway.
     
  26. Malveka

    Malveka

    Joined:
    Nov 6, 2009
    Posts:
    191
    Excellent! Let me know if there's anything I can do to help.
     
  27. tonygiang

    tonygiang

    Joined:
    Jun 13, 2017
    Posts:
    71
    Hey, I'd like some clarifications about some undocumented behaviors in Lean Touch. In my scene, I'm having an invisible collider at layer index-10. This invisible wall would block all LeanSelectableByFinger objects behind it from receiving selection event, even when in my project settings, the index-10 layer is configured to have no collision with any other layer. Then when I switch the layer of this collider to around index-27 to index-31, the LeanSelectableByFinger objects behind it suddenly can be selected again. The layers from index-27 to index-31 also have no collision with other layers.

    What caused this behavior? I can't find any documentation on what layer would or wouldn't block LeanSelectableByFinger.

    Edit: I found where the issue lies. It's a setting in LeanSelectByFinger under Screen Query.
     
    Last edited: Aug 17, 2021
    Darkcoder likes this.
  28. Darkcoder

    Darkcoder

    Joined:
    Apr 13, 2011
    Posts:
    3,404
    Hmm, well the dropdown list is probably one of the most complex UI elements so I don't really want to implement it :D The non-elegant way of writing a script to add some 'Please Choose...' option and auto select is probably much easier than the hundreds of lines required to implement the whole thing from scratch.


    Yes, please remind me if I don't get to this in a few days! I've been too busy recently to test this out.


    Glad you found a solution! Indeed, the ScreenQuery settings can do this. This performs a 2D, 3D, and UI raycast, so it can easily seem to hit objects you don't expect.
     
  29. JohnnyFactor

    JohnnyFactor

    Joined:
    May 18, 2018
    Posts:
    343
    I don't blame you. It's crazy complex. I've since decided to replace my dropdowns with a trigger button and scrollrecs. It's much easier to manage and it looks better anyways.
     
    Darkcoder likes this.
  30. JohnnyGo-Time

    JohnnyGo-Time

    Joined:
    Aug 8, 2021
    Posts:
    17
    Hello! Thank you for making an asset which I'm sure will help me a bunch.
    But can I ask you to sanity-check how I'm using it?

    I have a simple test here where I instantiate 1000 pre-fabs.
    What I am seeing is that it's almost identical with LeanPool Spawn compared to doing my own Instantiate each iteration.

    Short clip (the 1000 objects all spawn on top of each other for now)
    Screenshot of Code & Profiler comparison: https://imgur.com/a/fM74jdx

    I'm no expert at reading the profiler (or at C# haha) so if there's anything you can see there about how I'm doing the Spawn or using the asset, please let me know your thoughts.
    Thank you!!
     
  31. Gladyon

    Gladyon

    Joined:
    Sep 10, 2015
    Posts:
    389
    Pooling works by reusing unused objects instead of creating new ones.

    For example, you have 1000 bullets at the same time on the scene.
    At some point the bullets will hit something or disappear because they're too far away, so you'll have 0 bullets in the scene.
    Then you fire a bit more and you have again 1000 bullets in the scene.

    Without pooling you will have created a total of 2000 bullets.
    With pooling you will have created a total of 1000 bullets.


    In fact, for the first 1000 bullets, it will be slightly slower with pooling because you have to 'remember' the objects instead of destroying them.
    But in fact it will avoid the garbage collector to kick in a few seconds after the removal of the bullets, and there you'll start see performance improvement.
    Then, for the next 1000 bullets, with pooling it will be very very fast to make them appear, because you won't have to re-create them, you'll only have to un-hide them.

    So, it's normal if you're not seeing any performance improvement with the first 1000 bullets creation.


    If you want to test the performance of pooling, create and destroy 1000 objects per frame, and see what happen after a few frames.
     
    JohnnyGo-Time and Darkcoder like this.
  32. JohnnyGo-Time

    JohnnyGo-Time

    Joined:
    Aug 8, 2021
    Posts:
    17
    Ah wow, got it - thanks so much for the excellent answer!
     
  33. JohnnyGo-Time

    JohnnyGo-Time

    Joined:
    Aug 8, 2021
    Posts:
    17
    Another question, hopefully quick:
    I'm trying to understand how to check the status of the pool but am missing something about how the Links work.
    Do you know why the .ContainsKey below always returns false? I thought it would map from my gameObject to the pool managing it & its fellow cloned gameObjects.

    Code (CSharp):
    1. GameObject objectToAdd = Lean.Pool.LeanPool.Spawn(gameObject, new Vector3(0,0,0), Quaternion.identity);
    2. gameObjectList.Add(objectToAdd);
    3. if ( Lean.Pool.LeanPool.Links.ContainsKey(gameObject) )
    4. {
    5.    cachedPool = Lean.Pool.LeanPool.Links[gameObject];
    6. }
    Thanks!
     
  34. Darkcoder

    Darkcoder

    Joined:
    Apr 13, 2011
    Posts:
    3,404
    Links stores a link between the spawned object, and the pool it was spawned from. It's returning nothing because you're trying to search using the prefab, which isn't stored there. You can find the pool that handles a specific prefab using the LeanGameObjectPool.TryFindPoolByPrefab method.
     
    JohnnyGo-Time likes this.
  35. JohnnyGo-Time

    JohnnyGo-Time

    Joined:
    Aug 8, 2021
    Posts:
    17
    Ah geez - thanks so much!
     
    Darkcoder likes this.
  36. JohnnyFactor

    JohnnyFactor

    Joined:
    May 18, 2018
    Posts:
    343
    I would like to use OnFingerUpdate with LeanFingerDownCanvas (for dragging). Is this something you could add or am I using it wrong?
     
  37. Darkcoder

    Darkcoder

    Joined:
    Apr 13, 2011
    Posts:
    3,404
    You probably want to use LeanMultiUpdateCanvas, which has the OnFingers event which fires every frame some fingers are touching the current element.
     
    JohnnyFactor likes this.
  38. JohnnyFactor

    JohnnyFactor

    Joined:
    May 18, 2018
    Posts:
    343
    Yeah that was it, thanks. I now have a functional mini-map.
     
    Darkcoder likes this.
  39. Malveka

    Malveka

    Joined:
    Nov 6, 2009
    Posts:
    191
    A gentle reminder and inquiry to see if you've had a chance to look at this yet. Thanks!
     
  40. thePostFuturistUnity

    thePostFuturistUnity

    Joined:
    Nov 16, 2012
    Posts:
    53
    Getting casual errors in Editor regarding a memory leak (using Input System):


    Code (CSharp):
    1. A Native Collection has not been disposed, resulting in a memory leak. Allocated from:
    2. Unity.Collections.NativeArray`1:.ctor(Int32, Allocator, NativeArrayOptions)
    3. UnityEngine.InputSystem.LowLevel.InputStateHistory:Allocate() (at Library\PackageCache\com.unity.inputsystem@1.0.2\InputSystem\State\InputStateHistory.cs:322)
    4. UnityEngine.InputSystem.LowLevel.InputStateHistory:AllocateRecord(Int32&) (at Library\PackageCache\com.unity.inputsystem@1.0.2\InputSystem\State\InputStateHistory.cs:351)
    5. UnityEngine.InputSystem.LowLevel.InputStateHistory`1:AddRecord(Record) (at Library\PackageCache\com.unity.inputsystem@1.0.2\InputSystem\State\InputStateHistory.cs:752)
    6. UnityEngine.InputSystem.EnhancedTouch.FingerAndTouchState:UpdateActiveTouches() (at Library\PackageCache\com.unity.inputsystem@1.0.2\InputSystem\Plugins\EnhancedTouch\Touch.cs:598)
    7. UnityEngine.InputSystem.EnhancedTouch.Touch:get_activeTouches() (at Library\PackageCache\com.unity.inputsystem@1.0.2\InputSystem\Plugins\EnhancedTouch\Touch.cs:265)
    8. Lean.Common.LeanInput:GetTouchCount() (at Assets\Lean\Common\Scripts\LeanInput.cs:207)
    9. Lean.Touch.LeanTouch:PollFingers() (at Assets\Lean\Touch\Scripts\LeanTouch.cs:567)
    10. Lean.Touch.LeanTouch:UpdateFingers(Single, Boolean) (at Assets\Lean\Touch\Scripts\LeanTouch.cs:434)
    11. Lean.Touch.LeanTouch:Update() (at Assets\Lean\Touch\Scripts\LeanTouch.cs:422)
    12.  
    13.  
     
  41. Ogota101

    Ogota101

    Joined:
    Aug 2, 2018
    Posts:
    2
    I have a question about Lean Localization.
    I don't understand English very well and the question may be wrongly intended.
    When I read the reference etc., it says that Google has an automatic translation function, but the corresponding button is not displayed.
    It's not in the sample scene, and I don't know what to do when implementing it.
    It is unity 2020.1.0f1 windows10.
    I'm sorry, thank you for your reply.
     

    Attached Files:

  42. Darkcoder

    Darkcoder

    Joined:
    Apr 13, 2011
    Posts:
    3,404
    Yeah I tested it out and it seems to work as expected on mobile. This issue must be specific to desktop touchscreens, but I don't have to one to test with, I don't know anyone with one, and they seem fairly expensive to just buy for testing one thing. I tried to find some kind of windows touch emulator, but I couldn't seem to find anything suitable.


    That's coming from Unity's code (activeTouches.Count / get_activeTouches) so there's nothing I can do unless they fix it. Maybe you can see if there's an issue for it?


    You're using an old version of Lean Localization. You must use at least version 1.5.0. If you can't download it then you must manually delete the download cache first.
     
  43. RiseBasti

    RiseBasti

    Joined:
    Nov 4, 2018
    Posts:
    33
    Hi
    How can I add a function to "LeanSelectable.OnSelect" with code? I tried it with ".AddListener", but it requires an "UnityAcion<LeanFinger>".
    Can't I just add my function somehow?
    Thanks for your help!
     
  44. Ogota101

    Ogota101

    Joined:
    Aug 2, 2018
    Posts:
    2


    Thank you very much.
    This response worked, it seems that Package Manager wasn't updated well and I couldn't get the latest from the asset store.
    Thank you for your help.
     
    Darkcoder likes this.
  45. Darkcoder

    Darkcoder

    Joined:
    Apr 13, 2011
    Posts:
    3,404
    Your function must match the signature of the event, in this case it must take LeanFinger as its only argument. You can also use a lambda expression to ignore the argument(s) if you don't need it.
     
    RiseBasti likes this.
  46. pramodnp

    pramodnp

    Joined:
    Nov 12, 2018
    Posts:
    5
    Hello Darkcoder,

    I trust you are doing great! Thanks for all the awesome assets.

    Currently, I'm working with Lean Localization for a WebGL project. I'm trying to use English and Korean Text.
    It is working absolutely fine in Unity editor and Windows build.

    If I take a WebGL to build the Localization for Korean is not working. I really do not have any idea what I'm missing.

    I really appreciate your help and thank you very much in advance.
     
  47. Darkcoder

    Darkcoder

    Joined:
    Apr 13, 2011
    Posts:
    3,404
    You can use the "13 Debug" demo scene to see what Lean Localization sees when it tries to detect a language. This should tell you what happened.
     
  48. VolodymyrDrach

    VolodymyrDrach

    Joined:
    Dec 28, 2015
    Posts:
    7
    Hello! I am wondering if multi-finger touch can be implemented using Lean Touch? I'm interested in simultaneous touch. I want to make some unique beautiful swipe using multiple fingers.
     
  49. Darkcoder

    Darkcoder

    Joined:
    Apr 13, 2011
    Posts:
    3,404
    What do you mean? Components like LeanPinchScale detect the multi finger pinch gesture.
     
  50. bitinn

    bitinn

    Joined:
    Aug 20, 2016
    Posts:
    961
    Hi, I have a few questions regarding Lean Pool:

    - If I want to start with instances already spawned (in edit mode), is it possible to register these instances back into Lean Pool so that it can be de-spawned later? Or would it be better if I destroy them on start and respawn again immediately?

    - If I want to remember the current state of pool and its instances, does Lean Pool serialize properly just by serializing the game object with LeanGameObjectPool (assuming all spawned instances are added as children).

    The reason for these questions is I am making a tool that requires persistence between edit and play mode. And I want to see the spawned instances during edit mode.