SamsonGame/Assets/Sources/Lean/Touch+/Documentation/Documentation.html

2761 lines
304 KiB
HTML

<!DOCTYPE html>
<html style="margin: 0; padding: 0; height: 98%;" lang="en">
<head>
<title>Lean Touch+ - Documentation - 2.3.0</title>
<style type="text/css">
@font-face { font-family: 'gilroybold'; src: url(data:font/truetype;charset=utf-8;base64,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) format('truetype'); font-weight: normal; font-style: normal; }
@font-face { font-family: 'open_sansregular'; src: url(data:font/truetype;charset=utf-8;base64,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/9cAh//XANv/hQDe/4UAGwAF/1wACv9cACb/1wAq/9cAMv/XADT/1wA3/9cAOP/sADn/1wA6/9cAPP/DAIn/1wCU/9cAlf/XAJb/1wCX/9cAmP/XAJr/1wCb/+wAnP/sAJ3/7ACe/+wAn//DAMP/1wDF/8MA2v9cAN3/XAANAA/+9gAR/vYAJP+aADv/1wA9/+wAgv+aAIP/mgCE/5oAhf+aAIb/mgCH/5oA2/72AN7+9gBGAA//hQAQ/64AEf+FACIAKQAk/3EAJv/XACr/1wAy/9cANP/XADcAKQBE/1wARv9xAEf/cQBI/3EASv9xAFD/mgBR/5oAUv9xAFP/mgBU/3EAVf+aAFb/hQBY/5oAWf/XAFr/1wBb/9cAXP/XAF3/rgCC/3EAg/9xAIT/cQCF/3EAhv9xAIf/cQCJ/9cAlP/XAJX/1wCW/9cAl//XAJj/1wCa/9cAov9xAKP/XACk/1wApf9cAKb/XACn/1wAqP9cAKn/cQCq/3EAq/9xAKz/cQCt/3EAtP9xALX/cQC2/3EAt/9xALj/cQC6/3EAu/+aALz/mgC9/5oAvv+aAL//1wDD/9cAxP9xANf/rgDY/64A2/+FAN7/hQALAA//1wAR/9cAJP/sAIL/7ACD/+wAhP/sAIX/7ACG/+wAh//sANv/1wDe/9cAPAAP/5oAEf+aACIAKQAk/64AJv/sACr/7AAy/+wANP/sAET/1wBG/9cAR//XAEj/1wBK/+wAUP/sAFH/7ABS/9cAU//sAFT/1wBV/+wAVv/sAFj/7ACC/64Ag/+uAIT/rgCF/64Ahv+uAIf/rgCJ/+wAlP/sAJX/7ACW/+wAl//sAJj/7ACa/+wAov/XAKP/1wCk/9cApf/XAKb/1wCn/9cAqP/XAKn/1wCq/9cAq//XAKz/1wCt/9cAtP/XALX/1wC2/9cAt//XALj/1wC6/9cAu//sALz/7AC9/+wAvv/sAMP/7ADE/9cA2/+aAN7/mgA9AA//hQAR/4UAIgApACT/hQAm/9cAKv/XADL/1wA0/9cARP+aAEb/mgBH/5oASP+aAEr/1wBQ/8MAUf/DAFL/mgBT/8MAVP+aAFX/wwBW/64AWP/DAF3/1wCC/4UAg/+FAIT/hQCF/4UAhv+FAIf/hQCJ/9cAlP/XAJX/1wCW/9cAl//XAJj/1wCa/9cAov+aAKP/mgCk/5oApf+aAKb/mgCn/5oAqP+aAKn/mgCq/5oAq/+aAKz/mgCt/5oAtP+aALX/mgC2/5oAt/+aALj/mgC6/5oAu//DALz/wwC9/8MAvv/DAMP/1wDE/5oA2/+FAN7/hQAMACb/7AAq/+wAMv/sADT/7ACJ/+wAlP/sAJX/7ACW/+wAl//sAJj/7ACa/+wAw//sAAQABf/sAAr/7ADa/+wA3f/sAAoABf/sAAr/7ABZ/9cAWv/XAFv/1wBc/9cAXf/sAL//1wDa/+wA3f/sAAQABQApAAoAKQDaACkA3QApAAQABQB7AAoAewDaAHsA3QB7ABIARv/XAEf/1wBI/9cAUv/XAFT/1wCi/9cAqf/XAKr/1wCr/9cArP/XAK3/1wC0/9cAtf/XALb/1wC3/9cAuP/XALr/1wDE/9cAHgAFAFIACgBSAET/1wBG/9cAR//XAEj/1wBK/+wAUv/XAFT/1wCi/9cAo//XAKT/1wCl/9cApv/XAKf/1wCo/9cAqf/XAKr/1wCr/9cArP/XAK3/1wC0/9cAtf/XALb/1wC3/9cAuP/XALr/1wDE/9cA2gBSAN0AUgAJAAUAUgAKAFIAD/+uABH/rgAiACkA2gBSANv/rgDdAFIA3v+uAAQABf/XAAr/1wDa/9cA3f/XAAIAHwAFAAUAAAAKAAsAAQAPABEAAwAkACkABgAuAC8ADAAyADQADgA3AD4AEQBEAEYAGQBIAEkAHABLAEsAHgBOAE4AHwBQAFMAIABVAFUAJABXAFcAJQBZAFwAJgBeAF4AKgCCAI0AKwCSAJIANwCUAJgAOACaAKAAPQCiAKcARACqAK0ASgCyALIATgC0ALYATwC4ALgAUgC6ALoAUwC/AMEAVADDAMMAVwDFAMUAWADXANwAWQDeAN4AXwAAAAAAAQAAAADUJJi6AAAAAMk1MYsAAAAA2FuYxAABXDXoRAAA) format('truetype'); font-weight: normal; font-style: normal; }
@font-face { font-family: 'fira_monoregular'; src: url(data:font/truetype;charset=utf-8;base64,AAEAAAATAQAABAAwRkZUTYJLMrwAAAE8AAAAHEdERUYE3wXYAAABWAAAAEpHUE9TuP+4/gAAAaQAAAAwR1NVQvu3HdAAAAHUAAAEMk9TLzKXrPKZAAAGCAAAAGBjbWFw+LhN5QAABmgAAAHyY3Z0IAvILZgAAAhcAAAAlmZwZ23eFNvwAAAI9AAAC5dnYXNwAAAAEAAAFIwAAAAIZ2x5Zlp7xdAAABSUAABcyGhlYWQK9ULLAABxXAAAADZoaGVhBWwCgQAAcZQAAAAkaG10eBd9TyAAAHG4AAADwmxvY2FG/l/wAAB1fAAAAfBtYXhwAmsBqwAAd2wAAAAgbmFtZVfJp7QAAHeMAAAEunBvc3T+mkKfAAB8SAAAA2twcmVwbekAoQAAf7QAAACgd2ViZrgAXDYAAIBUAAAABgAAAAEAAAAA19poUgAAAADSFGHqAAAAANhcaH8AAQAAAAwAAAA6AEIAAgAHAAEAaQABAGoAagADAGsA6AABAOkA6gACAOsA8gABAPMA8wADAPQA9gABAAQAAAACAAAAAQAAAAEAAAAAAAEAAAAKACwALgACREZMVAAObGF0bgAYAAQAAAAA//8AAAAEAAAAAP//AAAAAAAAAAEAAAAKAKYBJgACREZMVAAObGF0bgAqAAQAAAAA//8ACQAAAAEAAgADAAQABQAHAAgACQBAAApBRksgAEBBWkUgAEBDQVQgAFhDUlQgAEBLQVogAEBNT0wgAEBQTEsgAEBST00gAEBUQVQgAEBUUksgAEAAAP//AAkAAAABAAIAAwAEAAUABwAIAAkAAP//AAoAAAABAAIAAwAEAAUABgAHAAgACQAKYWFsdAA+Y2FsdABEY2FzZQBMZGxpZwBSZG5vbQBYZnJhYwBebG9jbABobnVtcgBub3JkbgB0c3VwcwB6AAAAAQAAAAAAAgALAAwAAAABAAkAAAABAAoAAAABAAQAAAADAAUABgAHAAAAAQABAAAAAQADAAAAAQAIAAAAAQACAA4AHgAmADAAOABAAEgAUABYAGIAbAB0AHwAhgCUAAEAAAABAH4ABgAAAAIAsADSAAEAAAABAOoAAQAAAAEA+AABAAAAAQECAAEAAAABAQoAAQAAAAEBDgAGAAAAAgEYATgABgAAAAIBUgF2AAEAAAABAZAABAAAAAEBqgAGAAAAAgHCAdwABgAAAAQB7AIGAiACQgABAAAAAQJWAAIAHgAMAOQAbAB8APQAbAB8APMA8gD1APYA6wDtAAEADAASACQAMgBDAEQAUgBqAMYAxwDIAO8A8AADAAAAAgAQABYAAQAcAAAAAQABAE8AAQABAHkAAQABAE8AAwAAAAIAEAAWAAEAHAAAAAEAAQAvAAEAAQB5AAEAAQAvAAIADAADAHsAdAB1AAEAAwAUABUAFgACAAoAAgDvAPAAAQACABQAFgABAAYA1wACAAEAFAAXAAAAAQAGANIAAQABABIAAgAKAAIA7wDwAAEAAgAUABYAAwABABoAAQASAAAAAQAAAA0AAQACAO8A8AABAAEA5AADAAEAGgABABIAAAABAAAADQABAAIA7wDwAAIAAQDrAO4AAAADAAEAGgABABIAAAABAAAADQABAAIAJABEAAIAAQATABwAAAADAAEAGgABABIAAAABAAAADQABAAIAMgBSAAIAAQATABwAAAACABIABgD0APMA8QDyAPUA9gABAAYAQwBqAHYAxgDHAMgAAQAaAAEACAACAAYADADqAAIATwDpAAIATAABAAEASQADAAEAFgABABIAAAABAAAADQABAAAAAQAAAAMAAQAWAAEAEgAAAAEAAAANAAEAAAABAAAAAwAAAAEAEgABABYAAQAAAA0AAQAAAAEAAAADAAEAFgABABIAAAABAAAADQABAAAAAQAAAAMAAAABABQAAgAYAB4AAQAAAA0AAQAAAAEAAQADAAEAAAADAAIAGAAeAAEAFAAAAAEAAAANAAEAAAABAAEAAwABAAAAAgASAAYAbAB8AGwAfADrAO0AAQAGACQAMgBEAFIA7wDwAAAAAwJJAZAABQAEAooCWAAAAEsCigJYAAABXgAyATwAAAILBQkFAAACAARAAAKHAgA4AQAAAAAAAAAAQ1REQgBAAA37AgMg/zgAAAQaAghgAACfAAAAAAIPArEAAAAgAAMAAAADAAAAAwAAABwAAQAAAAAA7AADAAEAAAAcAAQA0AAAADAAIAAEABAADQB+AP8BMQFTAXgCxgLaAtwgCiAUIBogHiAiICYgLyA6IEQgXyCsISIl/PsC//8AAAANACAAoAExAVIBeALGAtoC3CAAIBAgGCAcICIgJiAvIDkgRCBfIKwhIiX8+wH////1/+P/wv+R/3H/Tf4A/e397ODJ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AAMAAQAAABMA6gADAAEECQAAAKAAAAADAAEECQABABIAoAADAAEECQACAA4AsgADAAEECQADADYAwAADAAEECQAEACIA9gADAAEECQAFABoBGAADAAEECQAGACABMgADAAEECQAHAGgBUgADAAEECQAIAFQBugADAAEECQAJAEwCDgADAAEECQALACwCWgADAAEECQAMACwChgADAAEECQANAHQCsgADAAEECQAOADQDJgADAAEECQDIABYDWgADAAEECQDJADADcAADAAEECQDKAAgDoAADAAEECQDLAA4DqAADAAEECdkDABoDtgBEAGkAZwBpAHQAaQB6AGUAZAAgAGQAYQB0AGEAIABjAG8AcAB5AHIAaQBnAGgAdAAgAKkAIAAyADAAMQAyAC0AMgAwADEANQAsACAAVABoAGUAIABNAG8AegBpAGwAbABhACAARgBvAHUAbgBkAGEAdABpAG8AbgAgAGEAbgBkACAAVABlAGwAZQBmAG8AbgBpAGMAYQAgAFMALgBBAC4ARgBpAHIAYQAgAE0AbwBuAG8AUgBlAGcAdQBsAGEAcgAzAC4AMgAwADYAOwBDAFQARABCADsARgBpAHIAYQBNAG8AbgBvAC0AUgBlAGcAdQBsAGEAcgBGAGkAcgBhACAATQBvAG4AbwAgAFIAZQBnAHUAbABhAHIAVgBlAHIAcwBpAG8AbgAgADMALgAyADAANgBGAGkAcgBhAE0AbwBuAG8ALQBSAGUAZwB1AGwAYQByAEYAaQByAGEAIABNAG8AbgBvACAAaQBzACAAYQAgAHQAcgBhAGQAZQBtAGEAcgBrACAAbwBmACAAVABoAGUAIABNAG8AegBpAGwAbABhACAAQwBvAHIAcABvAHIAYQB0AGkAbwBuAC4AQwBhAHIAcgBvAGkAcwAgAEMAbwByAHAAbwByAGEAdABlACAARwBiAFIAIAAmACAARQBkAGUAbgBzAHAAaQBlAGsAZQByAG0AYQBuAG4AIABBAEcAQwBhAHIAcgBvAGkAcwAgAEMAbwByAHAAbwByAGEAdABlACAAJgAgAEUAZABlAG4AcwBwAGkAZQBrAGUAcgBtAGEAbgBuACAAQQBHAGgAdAB0AHAAOgAvAC8AdwB3AHcALgBjAGEAcgByAG8AaQBzAC4AYwBvAG0AaAB0AHQAcAA6AC8ALwB3AHcAdwAuAGMAYQByAHIAbwBpAHMALgBjAG8AbQBMAGkAYwBlAG4AcwBlAGQAIAB1AG4AZABlAHIAIAB0AGgAZQAgAE8AcABlAG4AIABGAG8AbgB0ACAATABpAGMAZQBuAHMAZQAsACAAdgBlAHIAcwBpAG8AbgAgADEALgAxACAAbwByACAAbABhAHQAZQByAGgAdAB0AHAAOgAvAC8AcwBjAHIAaQBwAHQAcwAuAHMAaQBsAC4AbwByAGcALwBPAEYATABXAGUAYgBmAG8AbgB0ACAAMQAuADAAVwBlAGQAIABKAGEAbgAgACAAOQAgADIAMgA6ADEAMQA6ADUAOQAgADIAMAAxADkAawBlAGUAcABwAGUAZwBhAHMAdQBzAEYAbwBuAHQAIABTAHEAdQBpAHIAcgBlAGwAAAACAAAAAAAA/u0AMgAAAAAAAAAAAAAAAAAAAAAAAAAAAPcAAAECAQMAAwAEAAUABgAHAAgACQAKAAsADAANAA4ADwAQABEAEgATABQAFQAWABcAGAAZABoAGwAcAB0AHgAfACAAIQAiACMAJAAlACYAJwAoACkAKgArACwALQAuAC8AMAAxADIAMwA0ADUANgA3ADgAOQA6ADsAPAA9AD4APwBAAEEAQgBDAEQARQBGAEcASABJAEoASwBMAE0ATgBPAFAAUQBSAFMAVABVAFYAVwBYAFkAWgBbAFwAXQBeAF8AYABhAQQAowCEAIUAvQCWAOgAhgCOAIsAnQCpAKQBBQCKANoAgwCTAQYBBwCNAJcAiADDAN4BCACeAKoA9QD0APYAogCtAMkAxwCuAGIAYwCQAGQAywBlAMgAygDPAMwAzQDOAOkAZgDTANAA0QCvAGcA8ACRANYA1ADVAGgA6wDtAIkAagBpAGsAbQBsAG4AoABvAHEAcAByAHMAdQB0AHYAdwDqAHgAegB5AHsAfQB8ALgAoQB/AH4AgACBAOwA7gC6ANcAsACxALsA2ADdANkBCQEKAQsBDAENAQ4BDwEQAREBEgETARQBFQEWALIAswC2ALcAxAC0ALUAxQCHAKsBFwC+AL8AvAEYARkAjAEaARsBHAEdAR4BHwEgASEBIgEjASQBJQEmAScBKAZnbHlwaDEHdW5pMDAwRAd1bmkwMEEwB3VuaTAwQUQHdW5pMDBCMgd1bmkwMEIzB3VuaTAwQjkHdW5pMjAwMAd1bmkyMDAxB3VuaTIwMDIHdW5pMjAwMwd1bmkyMDA0B3VuaTIwMDUHdW5pMjAwNgd1bmkyMDA3B3VuaTIwMDgHdW5pMjAwOQd1bmkyMDBBB3VuaTIwMTAHdW5pMjAxMQpmaWd1cmVkYXNoB3VuaTIwMkYHdW5pMjA1RgRFdXJvB3VuaTI1RkMHdW5pRkIwMQd1bmlGQjAyCG9uZS5kbm9tCHR3by5kbm9tCnRocmVlLmRub20JZm91ci5kbm9tCG9uZS5udW1yCnRocmVlLm51bXIKYWN1dGUuY2FzZQ9jaXJjdW1mbGV4LmFhbHQNZGllcmVzaXMuYWFsdApncmF2ZS5hYWx0CXJpbmcuYWFsdAp0aWxkZS5hYWx0AABLuADIUlixAQGOWbABuQgACABjcLEABkK0RDAcAwAqsQAGQrc3CCMIEQcDCCqxAAZCt0EGLQYaBQMIKrEACUK8DgAJAASAAAMACSqxAAxCvABAAEAAQAADAAkqsQMARLEkAYhRWLBAiFixA2REsSYBiFFYugiAAAEEQIhjVFixAwBEWVlZWbc5CCUIEwcDDCq4Af+FsASNsQIARLEFZEQAAVw2t/8AAA==) format('truetype'); font-weight: normal; font-style: normal; }
h1{ font-family: 'gilroybold'; line-height: 0%; font-size: 80px; color: #0075D0; margin: 30px; margin-left: 0px; margin-bottom: 60px; }
h2{ font-family: 'gilroybold'; font-weight: bold; line-height: 35px; vertical-align:middle; font-size: 36px; color: #0075D0; margin: 0px; }
h3{ font-family: 'gilroybold'; font-weight: bold; line-height: 22px; font-size: 22px; color: #0075D0; margin: 0px; padding-top: 40px; padding-bottom: 10px; }
h2 b { font-size:20px; vertical-align:middle; opacity:0.5; }
p{ font-family: 'open_sansregular'; font-weight: normal; line-height: normal; font-size: 15px; color: #024274; }
a{ font-family: 'open_sansregular'; font-weight: 600; line-height: normal; font-size: 15px; color: #0075D0; }
a:visited{ font-family: 'open_sansregular'; font-weight: 600; line-height: normal; font-size: 15px; color: #0075D0; }
pre{ font-family: 'fira_monoregular'; line-height: 20px; font-size: 14px; color: #000; tab-size: 4; }
.code{ background: #EDF7FF; border-radius: 5px; padding: 10px; margin: 15px; }
.tip{ background: #EDF7FF; font-family: 'open_sansregular'; line-height: 25px; border-radius: 5px; padding: 10px; color: #0075D0; font-size: 15px; border: 5px; margin: 15px; }
.warning{ background: #FFDCBC; font-family: 'open_sansregular'; line-height: 25px; border-radius: 5px; padding: 10px; color: #FD7C09; font-size: 15px; border: 5px; margin: 15px; }
.error{ background: #FFB6B6; font-family: 'open_sansregular'; line-height: 25px; border-radius: 5px; padding: 10px; color: #FF4545; font-size: 15px; border: 5px; margin: 15px; }
::-webkit-scrollbar{ width: 10px; }
::-webkit-scrollbar-track{ background: #f1f1f1; }
::-webkit-scrollbar-thumb{ background: #0075D0; }
::-webkit-scrollbar-thumb:hover{ background: #555; }
</style>
</head>
<body style="margin: 0; height: 98%;">
<div style="background-color: #0075D0; position: absolute; left: 0px; right: 0px; top: 0px; height: 20px;">
</div>
<div style="position: absolute; left: 350px; right: 0px; top: 20px; bottom: 20px; overflow-y: scroll; padding: 20px;">
<div style="padding-top: 30px; padding-bottom: 50px;">
<h2 style="font-size: 75px; color: #0075D0; text-align: center; vertical-align: middle; line-height: 50px;">Lean Touch+</h2>
<br>
<h2 style="font-size: 30px; color: #0075D0; text-align: center; vertical-align: middle; line-height: 20px;">DOCUMENTATION</h2>
</div>
<div style="overflow:hidden;"><a name="WhatIs"></a><h2>What is Lean Touch+?</h2><p>Lean Touch+ is an extension to Lean Touch, adding many new demo scenes, and many new components.</p><p>The new components are also designed to be very flexible, so you can combine them in any way you like.</p><div class="tip"><strong>NOTE</strong>&emsp; Because this asset is an extension to Lean Touch, I recommend you read the Lean Touch documentation too!</div><br><br></div><div style="overflow:hidden;"><a name="GettingStarted"></a><h2>How do I get started?</h2><p>Simply go through all the demo scenes in the Touch+/Examples folder!</p><p>Most of the demo scenes introduce one new feature at a time, allowing you to clearly understand what is being done.</p><p>The description text at the bottom also tells you in detail which components or settings were added/changed to achieve the effects seen.</p><p>If you feel like any feature isn't explained well enough, or that a feature is missing, then let me know so I can improve this asset!</p><br><br></div><div style="overflow:hidden;"><a name="Examples"></a><h2>What Examples Are Included?</h2><p>This is a list of the in-game example scenes and a description of what it shows.<div style="padding-left:20px;"><h3>Finger Held</h3><p style="margin-top: 0px;">This shows you how to detect when your finger has been touching the screen for more than 1 second without moving. This is done using the <b>LeanFingerHeld</b> component, which invokes events when this happens, and when you later stop touching the screen, or move your finger too much. You can modify this component's <b>MinimumAge</b> and <b>MaximumMovement</b> settings to change how it behaves.</p></div><div style="padding-left:70px;"><h3>Spawn</h3><p style="margin-top: 0px;">This shows you how to make a first person camera that can look around when you drag the screen.</p></div><div style="padding-left:20px;"><h3>Finger Tap Expired</h3><p style="margin-top: 0px;">This shows you how to perform an action using a single or double tap, without them interfering with each other. This is done using the <b>LeanFingerTapExpired</b> component, which executes when your tapping finger has stopped tapping for long enough that the tap counter has been reset. You can adjusting this timing with the <b>LeanTouch.TapThreshold</b> setting.</p></div><div style="padding-left:70px;"><h3>Rotate</h3><p style="margin-top: 0px;">This shows you how to perform an action using a single or double tap, without them interfering with each other. This is done using the <b>LeanFingerTapExpired</b> component, which executes when your tapping finger has stopped tapping for long enough that the tap counter has been reset. You can adjusting this timing with the <b>LeanTouch.TapThreshold</b> setting.</p></div><div style="padding-left:20px;"><h3>Multi Twist</h3><p style="margin-top: 0px;">This shows you how to detect the multi twist gesture using the <b>LeanMultiTwist</b> component. This component's <b>OnTwistDegrees</b> event is connected to the <b>LeanRoll.DecrementAngle</b> method, which allows you to change the rotation of the arrow.</p></div><div style="padding-left:70px;"><h3>One Finger</h3><p style="margin-top: 0px;">This shows you how the <b>MultiTwist</b> demo scene can be modified to work with a one finger twist gesture. This is done by changing the <b>OneFinger</b> setting to <b>ScreenCenter</b> or <b>FingerStart</b>.</p></div><div style="padding-left:70px;"><h3>Axis</h3><p style="margin-top: 0px;">This shows you how the <b>MultiTwist</b> demo scene can be modified to work with a one finger twist gesture. This is done by changing the <b>OneFinger</b> setting to <b>ScreenCenter</b> or <b>FingerStart</b>.</p></div><div style="padding-left:70px;"><h3>Delay</h3><p style="margin-top: 0px;">This shows you how to rotate an object with a delay. This is useful if you need very precise positioning on a touch device, because when you release your finger typically your finger can move slightly and unexpectedly add some movement. This is done using the <b>LeanDelatedValue</b> component, where the <b>LeanMultiTwist.OnTwistDegrees</b> event is connected to the <b>LeanDelayedValue.SetX</b> method, which after a delay invokes the <b>LeanDelayedValue.OnValueX</b> method, which is connected to the <b>LeanManualRotate.RotateA</b> method.</p></div><div style="padding-left:20px;"><h3>Multi Tap</h3><p style="margin-top: 0px;">This shows you how <b>LeanMultiTap</b> can be used to detect a multi finger tap gesture,</p></div><div style="padding-left:20px;"><h3>Translate Rigidbody</h3><p style="margin-top: 0px;">This shows you how <b>LeanDragTranslateRigidbody</b> can be used to translate a Rigidbody GameObject.</p></div><div style="padding-left:70px;"><h3>Under</h3><p style="margin-top: 0px;">This shows you how to combine <b>Select3D</b> and <b>DragToThrowTarget</b>, allowing you to throw objects around the screen with force indicators.</p></div><div style="padding-left:20px;"><h3>Translate Rigidbody2D</h3><p style="margin-top: 0px;">This shows you how <b>LeanDragTranslateRigidbody2D</b> can be used to translate a Rigidbody2D GameObject.</p></div><div style="padding-left:70px;"><h3>Under</h3><p style="margin-top: 0px;">This shows you how <b>LeanDragTranslateRigidbody2D</b> can be used to translate a Rigidbody2D GameObject.</p></div><div style="padding-left:20px;"><h3>First Down & Last Up</h3><p style="margin-top: 0px;">This shows you how to detect when the first finger begins touching the screen, and when the last finger finishes touching the screen. This is done using the <b>LeanFirstDown</b> and <b>LeanLastUp</b> component.s</p></div><div style="padding-left:20px;"><h3>Multi Held</h3><p style="margin-top: 0px;">This shows you how to detect when your finger has been touching the screen for more than 1 second without moving. This is done using the <b>LeanFingerHeld</b> component, which invokes events when this happens, and when you later stop touching the screen, or move your finger too much. You can modify this component's <b>MinimumAge</b> and <b>MaximumMovement</b> settings to change how it behaves.</p></div><div style="padding-left:20px;"><h3>GrabSpinThrow</h3><p style="margin-top: 0px;">This shows you how <b>LeanTranslateRigidbodySmooth</b> can be combined with <b>LeanSelectableDragTorque</b> to pick up, spin, and throw Rigidbody GameObjects.</p></div><div style="padding-left:20px;"><h3>Pong</h3><p style="margin-top: 0px;">This shows you how to make a split screen pong control system. The paddles use the <b>LeanMultiUpdate</b> component with the <b>Use</b> setting is set to <b>ManuallyAddedFingers</b>. The paddle is moved using the <b>LeanChase</b> component, whose <b>SetPosition</b> function is called from the <b>LeanMultiUpdate.OnWorldTo</b> event. The <b>LeanConstrainToCollider</b> component is then used to keep each paddle within the specified box area. Each side of the screen has a UI image with the <b>LeanFingerDownCanvas</b> component, and its <b>OnFinger</b> event is connected to the <b>LeanMultiUpdate.AddFinger</b> function on each paddle.</p></div><div style="padding-left:20px;"><h3>PressureScale</h3><p style="margin-top: 0px;">This shows you how <b>LeanSelectablePressureScale</b> can scale the current selectable based on the pressure of the selecting finger.</p></div><div style="padding-left:20px;"><h3>ReplayFinger</h3><p style="margin-top: 0px;">This shows you how <b>LeanRecordFinger</b> can record the movement of the last finger, and replay it when pressing a button.</p></div><div style="padding-left:20px;"><h3>Slingshot</h3><p style="margin-top: 0px;">This shows you how the <b>LinePowerThrow2D</b> demo scene can be modified to work like a slingshot game. The sphere's Rigidbody2D is marked as kinematic to stop it from moving, and when released the <b>LeanDragLine.OnReleasedDelta</b> event maked it dynamic, disables the <b>LeanSelect</b> component, and finally applies velocity. The <b>LeanDragLine.Invert</b> setting is also used to invert the power indicator.</p></div><div style="padding-left:20px;"><h3>SwapBlocks2D</h3><p style="margin-top: 0px;">This shows you how <b>LeanMatchBlock</b> can implement an input system similar to match-3 style games.</p></div><div style="padding-left:20px;"><h3>TransformRevert</h3><p style="margin-top: 0px;">This shows you how the <b>Select3DTransformRelative</b> demo scene can be modified to revert the transform values when you deselect an object. This is done using the <b>LeanRevertTransform</b> component. The reversion is triggered using the <b>LeanSelectable</b> component\u2019s <b>OnSelect</b> and <b>OnDeselect</b> events to call the <b>LeanRevertTransform</b> component\u2019s <b>StopRevert</b> and <b>Revert</b> methods.</p></div><div style="padding-left:20px;"><h3>TransformToggle</h3><p style="margin-top: 0px;">This shows you how the <b>Transform3D</b> demo scene can be modified to limit transformation to one gesture at a time. This is done using the <b>LeanGestureToggle</b> component, which can enable/disable the specified twist, pinch, and drag components based on which gesture you perform first.</p></div><div style="padding-left:20px;"><h3>Orbit</h3><p style="margin-top: 0px;">This shows you how to orbit the camera around a 3D point when you drag across the screen. This is done by making a new <b>GameObject</b> called <b>"Camera Pivot"</b>, and adding the <b>LeanMultiSet</b> and <b>LeanPitchYaw</b> components to it. You then connect the <b>LeanMultiSet</b> component's <b>OnDelta</b> event to the <b>LeanPitchYaw.Rotate</b> function. You can then drag and drop your camera to make it a child of this pivot GameObject. The orbit distance can be controlled using the orbit distance using the camera's <b>Transform.Position.z</b> setting.</p></div><div style="padding-left:70px;"><h3>Zoom</h3><p style="margin-top: 0px;">This shows you how the <b>Orbit</b> demo scene can be modified to include camera FOV zooming. This is done by adding the <b>LeanPinchCamera</b> component to your main camera.</p></div><div style="padding-left:70px;"><h3>Wheel</h3><p style="margin-top: 0px;">This shows you how the <b>Orbit / Zoom</b> demo scene can be modified to allow for mouse wheel adjustment of the zooming. This is done using the <b>LeanMouseWheel</b> component, where its <b>OnDelta</b> event is connected to the <b>LeanPinchCamera</b> component's <b>MultiplyZoom</b> method. The <b>LeanMouseWheel</b> component's <b>Coordinate</b> setting should be set to <b>OneBased</b>, so it sends values suitable for multiplication.</p></div><div style="padding-left:70px;"><h3>Relative</h3><p style="margin-top: 0px;">This shows you how the <b>Orbit / Zoom</b> demo scene can be modified to zoom relative to where on the screen you pinch. This is done by enabling the <b>LeanPinchCamera</b> component's <b>Relative</b> setting. The <b>ScreenDepth</b> setting must also be set so the relative calculations are based on the correct depth (not important with an orthographic camera).</p></div><div style="padding-left:70px;"><h3>Auto Rotate</h3><p style="margin-top: 0px;">This shows you how the <b>Orbit</b> demo scene can be modified to include auto rotation when you stop rotating the orbit for more than 1 second. This is done by adding the <b>LeanPitchYawAutoRotate</b> component alongside the <b>LeanPitchYaw</b> component.</p></div><div style="padding-left:70px;"><h3>Dolly</h3><p style="margin-top: 0px;">This shows you how the <b>CameraOrbit</b> demo scene can be modified to allow the camera to move</p></div><div style="padding-left:70px;"><h3>Collision</h3><p style="margin-top: 0px;">This shows you how the <b>CameraOrbitDolly</b> demo scene can be modified to stop objects blocking</p></div><div style="padding-left:70px;"><h3>Center</h3><p style="margin-top: 0px;">This shows you how the pivot point of an orbiting camera can snap to your object selection.</p></div><div style="padding-left:70px;"><h3>Move</h3><p style="margin-top: 0px;">This shows you how the <b>Orbit</b> demo scene be modified to allow manual movement of the orbit center point. This is done by adding the <b>LeanDragcamera</b> component to your camera pivot GameObject. You can then change the <b>LeanDragCamera.ScreenDepth</b> setting to <b>CameraDistanceAuto</b>, and adjust the <b> Use.RequiredFingerCount</b> settings to prevent your controls from conflicting.</p></div><div style="padding-left:70px;"><h3>TopDown</h3><p style="margin-top: 0px;">This shows you how the <b>Orbit / Move</b> demo scene can be modified to work in a top down scenario. This is done by adding the <b>LeanDragCamera</b> component to the camera pivot point with a <b>ScreenDepth</b> setting of <b>PlaneIntercept</b> with a <b>LeanPlane</b> that lies flat on the ground plane.</p></div><div style="padding-left:70px;"><h3>Swipe</h3><p style="margin-top: 0px;">This shows you how to modify the <b>Orbit</b> demo scene to rotate the camera when you swipe the screen. This is done by replacing the <b>LeanMultiDrag</b> component with the <b>LeanFingerSwipe</b> component, and connecting its <b>OnDelta</b> event to the <b>LeanPitchYaw.Rotate</b> method.</p></div><div style="padding-left:70px;"><h3>Snap</h3><p style="margin-top: 0px;">This shows you how the <b>LeanPitchYaw</b> component's <b>SetYaw</b> and <b>SetPitch</b> functions can be called from UI buttons to reset the pitch, yaw, or both, to a specific value. This allows you to focus the camera on a specific point of interest.</p></div><div style="padding-left:20px;"><h3>First Person</h3><p style="margin-top: 0px;">This shows you how to make a first person camera that can look around when you drag the screen.</p></div><div style="padding-left:70px;"><h3>Move</h3><p style="margin-top: 0px;">This shows you how <b>LeanPitchYaw/Smooth</b> can be split in two, allowing you to translate the camera locally without using the camera pitch like in an FPS game.</p></div><div style="padding-left:70px;"><h3>Tap Look</h3><p style="margin-top: 0px;">This shows you how the <b>FirstPersonLook</b> demo scene can be modified to allow you to tap look as well.</p></div><div style="padding-left:20px;"><h3>Freeflight</h3><p style="margin-top: 0px;">This shows you how to create a free flight camera system, where you have 6 degrees of freedom. You can see the children of the <b>Main Camera</b> GameObject to see how this is set up. One Finger Drag = Pitch/Yaw. Twist = Roll. Two Finger Drag = Left/Right & Down/Up. Pinch = Forward/Back.</p></div><div style="padding-left:70px;"><h3>Rigidbody</h3><p style="margin-top: 0px;">This shows you how the <b>FreeflightCamera</b> demo scene can be modified to allow movement of a <b>Rigidbody</b> camera. This is done by replacing the <b>LeanManualTranslate</b> components with the <b> LeanManualTranslate Rigidbody</b> component.</p></div><div style="padding-left:70px;"><h3>Object</h3><p style="margin-top: 0px;">This shows you how to make a GameObject that can be controlled across 6 degrees of freedom.</p></div><div style="padding-left:20px;"><h3>Sidescroll 2D</h3><p style="margin-top: 0px;">This shows you how the <b>LeanDragCamera</b> component can be added to your camera to create a 2D sidescrolling camera.</p></div><div style="padding-left:70px;"><h3>Zoom</h3><p style="margin-top: 0px;">This shows you how the <b>Sidescroll 2D</b> demo scene can be modified to include camera zooming. This is done by adding the <b>LeanPinchCamera</b> component to the camera GameObject.</p></div><div style="padding-left:70px;"><h3>Constrain</h3><p style="margin-top: 0px;">This shows you how the <b>LeanConstrainToOrthographic</b> component can be used to constrain an orthographic camera to a <b>LeanPlane</b> with a fixed size, even when the camera's orthographic size/zoom changes.</p></div><div style="padding-left:70px;"><h3>Rotate</h3><p style="margin-top: 0px;">This shows you how the <b>Sidescroll 2D / Zoom</b> demo scene can be modified to include camera rotation. This is done by adding the <b>LeanTwistCamera</b> component to the camera GameObject.</p></div><div style="padding-left:70px;"><h3>Map</h3><p style="margin-top: 0px;">This shows you how the <b> Sidescroll2DZoomRotate</b> demo scene can be modified to work like most 2D map applications. This is done by enabling the <b>LeanPinchCamera.Relative</b> and <b>LeanTwistCamera.Relative</b> settings. The current camera control mode can be toggled between using the <b>LeanGestureToggle</b> component, which will change based on the first gesture you perform.</p></div><div style="padding-left:20px;"><h3>Sidescroll 3D</h3><p style="margin-top: 0px;">This shows you how the <b>LeanDragCamera</b> component can be added to your camera to create a 3D sidescrolling camera.</p></div><div style="padding-left:70px;"><h3>Zoom</h3><p style="margin-top: 0px;">This shows you how the <b>Sidescroll 3D</b> demo scene can be modified to include camera zooming. This is done by adding the <b>LeanPinchCamera</b> component to the camera GameObject.</p></div><div style="padding-left:70px;"><h3>Rotate</h3><p style="margin-top: 0px;">This shows you how the <b>Sidescroll 3D / Zoom</b> demo scene can be modified to include camera rotation. This is done by adding the <b>LeanTwistCamera</b> component to the camera GameObject.</p></div><div style="padding-left:20px;"><h3>Top Down</h3><p style="margin-top: 0px;">This shows you how the <b>LeanFingerSwipe</b> and <b>LeanManualTranslate</b> components</p></div><div style="padding-left:70px;"><h3>SwipeMove</h3><p style="margin-top: 0px;">This shows you how the <b>LeanFingerSwipe</b> and <b>LeanManualTranslate</b> components</p></div><div style="padding-left:70px;"><h3>Clamp</h3><p style="margin-top: 0px;">This shows you how the <b> TopDownSwipeMove</b> demo scene can be combined with the <b>ConstrainToCollider</b> demo scene, adding a <b>BoxCollider</b> to the camera movement.</p></div><div style="padding-left:20px;"><h3>Conflicting Controls</h3><p style="margin-top: 0px;">This shows you how to make it so finger drags can both rotate the camera, and move selected objects, without either action conflicting. This is done using the <b>LeanSelectedCount</b> component, which invokes events based on how many objects you have selected. These events can be used to enable/disable the <b>LeanMultiUpdate</b> component, which is used to control the camera orbit.</p></div><div style="padding-left:20px;"><h3>One Finger Zoom</h3><p style="margin-top: 0px;">This shows you how to control camera zoom using a one finger drag up or down gesture. This is done using the <b>LeanPinchCamera</b> for the camera zoom, and setting <b>Use = ManuallyAddedFingers</b> to disable the default pinch gesture to zoom. The <b>LeanMultiDirection</b> component is then used to detect the vertical (up & down) finger movement. Its <b>OnDelta</b> event sends the delta to the <b>LeanPinchCamera.IncrementZoom</b> method. You can control the drag direction using the <b>Angle</b> setting.</p></div><div style="padding-left:20px;"><h3>Finger Down Canvas</h3><p style="margin-top: 0px;">This shows you how the <b>LeanFingerDownCanvas</b> component can be added to your UI elements, allowing you to detect when a finger presses down on it. In this scene the <b>LeanFingerDownCanvas.OnWorld</b> event is used to output the world position of the finger to the <b>LeanFormatString</b> component's <b>SetString</b> function.</p></div><div style="padding-left:70px;"><h3>Move</h3><p style="margin-top: 0px;">This shows you how to move an object when you press on a UI element. This is done using the <b>LeanFingerDownCanvas</b> and <b>LeanManualTranslate</b> components. The <b>LeanFingerDownCanvas.OnFingers</b> event calls the <b>LeanManualTranslate.TranslateB</b> function, with different distance values to change direction. The movement axis can be changed from the <b>LeanManualTranslate.DirectionB</b> setting.</p></div><div style="padding-left:70px;"><h3>Swipe Move</h3><p style="margin-top: 0px;">This shows you how <b>LeanFingerSwipe.OnSwipeDelta</b> can be linked to <b>LeanManualTranslate.Translate</b>, to translate a GameObject along custom axes.</p></div><div style="padding-left:20px;"><h3>Multi Update Canvas</h3><p style="margin-top: 0px;">This shows you how the <b>LeanMultiSetCanvas</b> component can be added to your UI elements, allowing you to detect when fingers are touching it. In this scene the <b>LeanMultiSetCanvas.OnWorld</b> event is used to output the world position of the finger to the <b>LeanFormatString</b> component's <b>SetString</b> function.</p></div><div style="padding-left:70px;"><h3>Rotate</h3><p style="margin-top: 0px;">This shows you how <b>LeanFingerDownCanvas</b> can manually send fingers to <b>LeanMultiSet</b>.</p></div><div style="padding-left:70px;"><h3>DPad</h3><p style="margin-top: 0px;">This shows you how <b>LeanCanvasSet</b> can trigger <b>LeanManualRotate/Smooth.RotateA/B</b>,</p></div><div style="padding-left:70px;"><h3>Move</h3><p style="margin-top: 0px;">This shows you how <b>LeanFingerDownCanvas</b> can manually send fingers to <b>LeanMultiSet</b>.</p></div><div style="padding-left:20px;"><h3>Drag To Spawn</h3><p style="margin-top: 0px;">This shows you how to spawn objects when a finger touches down on an UI element, and how to position the object under the finger until it releases. This is done by adding the <b>LeanFingerDownCanvas</b> component to your UI element, and the <b>LeanSpawnWithFinger</b> component. The <b>LeanFingerDownCanvas.OnFinger</b> event is connected to the <b>LeanSpawnWithFinger.Spawn</b> function, which will spawn the object when you touch the UI element. The <b>LeanSpawnWithFinger.DragAfterSpawn</b> setting is then enabled to allow dragging of the spawned object until the spawning fingers stops touching the screen.</p></div><div style="padding-left:70px;"><h3>Selectable</h3><p style="margin-top: 0px;">This shows you how the <b>Drag To Spawn</b> and <b>Press To Select</b> demo scenes can be combined. This is done by enabling the <b>LeanSpawnWithFinger.SelectOnSpawn</b> setting, and dropping the <b>Press To Select</b> object into the <b>LeanSpawnWithFinger.SelectWith</b> setting. This will automatically select the object when spawned, and deselect it when released.</p></div><div style="padding-left:70px;"><h3>Drop</h3><p style="margin-top: 0px;">This shows you how the <b>Drag To Spawn / Selectable</b> demo scene can be modified to work with Rigidbody GameObjects. This is done by enabling the prefab's <b>Rigidbody.isKinematic</b> setting, and connecting the prefab's <b>LeanSelectableByFinger.OnDeselected</b> event to the <b>Rigidbody.isKinematic = false</b> function.</p></div><div style="padding-left:20px;"><h3>Swipe Direction Spawn</h3><p style="margin-top: 0px;">This shows you how the <b>Drag To Spawn / Selectable / Drop</b> demo scene can be modified to spawn a different prefab based on your swipe direction. This is done using multiple <b>LeanManualFlick</b> components with different angle requirements. The <b>LeanFingerDownCanvas.OnFinger</b> event is instead used to send the finger to each of these components using the <b>LeanManualFlick.AddFinger</b> function. The <b>LeanManualFlick.OnFinger</b> even is then connected to each <b>LeanSpawnWithFinger.Spawn</b> function to perform the spawn based on the direction you swiped in.</p></div><div style="padding-left:20px;"><h3>Constrain Scale</h3><p style="margin-top: 0px;">This shows you how <b>LeanMultiDrag.OnDragDelta</b> can trigger <b>LeanManualRotate.Rotate</b>, allowing you to rotate a GameObject along custom axes.</p></div><div style="padding-left:20px;"><h3>Constrain To Box</h3><p style="margin-top: 0px;">This shows you how the position of an object can be constrained to a box shape using the <b>LeanConstrainToBox</b> component.</p></div><div style="padding-left:20px;"><h3>Constrain To Axis</h3><p style="margin-top: 0px;">This shows you how the position of an object can be constrained along a specific axis using the <b>LeanConstrainToAxis</b> component. You can control the axis with the <b>Axis</b> setting, and adjust the <b>Minimum</b> and/or <b>Maximum</b> values.</p></div><div style="padding-left:20px;"><h3>Constrain To Collider</h3><p style="margin-top: 0px;">This shows you how the position of an object can be constrained to be inside a collider using the <b>LeanConstrainToCollider</b> component. If you don't want your boudnary to collide with your other objects then you can enable the <b>isTrigger</b> setting, and/or place the boundary on a layer that doesn't collide.</p></div><div style="padding-left:20px;"><h3>Constrain To Colliders</h3><p style="margin-top: 0px;">This shows you how the position of an object can be constrained to be inside multiple colliders using the <b>LeanConstrainToColliders</b> component. If you don't want your boudnary to collide with your other objects then you can enable the <b>isTrigger</b> setting, and/or place the boundary on a layer that doesn't collide.</p></div><div style="padding-left:20px;"><h3>Constrain To Direction</h3><p style="margin-top: 0px;">This shows you how the rotation of a <b>Transform</b> can be constrained to be inside the specified cone. You can select the <b>Red Cube</b> GameObject to see the cone in the <b>Scene</b> tab.</p></div><div style="padding-left:20px;"><h3>Constrain Rigidbody</h3><p style="margin-top: 0px;">This shows you how your <b>Rigidbody</b> can be constrained within a boundary. This is done by adding colliders to your boundary and object, and using the <b>LeanDragTranslateRigidbody</b> component on your object. Keep in mind this scene enables the <b>Rigidbody.Constraints.FreezePosition.Z</b> setting to maintain the side-scrolling effect.</p></div><div style="padding-left:20px;"><h3>Constrain Rigidbody2D</h3><p style="margin-top: 0px;">This shows you how your <b>Rigidbody2D</b> can be constrained within a boundary. This is done by adding colliders to your boundary and object, and using the <b>LeanDragTranslateRigidbody2D</b> component on your object.</p></div><div style="padding-left:20px;"><h3>Dial 3D</h3><p style="margin-top: 0px;">This shows you how <b>LeanSelectableDial</b> can be used to turn objects around an axis like a knob or dial.</p></div><div style="padding-left:70px;"><h3>Clamp</h3><p style="margin-top: 0px;">This shows you how <b>LeanSelectableDial</b> can be used to turn objects around an axis like a knob or dial.</p></div><div style="padding-left:70px;"><h3>Lever</h3><p style="margin-top: 0px;">This shows you how <b>LeanSelectableDial</b> can be used to turn objects around an axis like a knob or dial.</p></div><div style="padding-left:70px;"><h3>Trigger</h3><p style="margin-top: 0px;">This shows you how <b>LeanSelectableDial</b> can be used to turn objects around an axis like a knob or dial.</p></div><div style="padding-left:70px;"><h3>Angle</h3><p style="margin-top: 0px;">This shows you how <b>LeanSelectableDial</b> can be used to turn objects around an axis like a knob or dial.</p></div><div style="padding-left:70px;"><h3>0 to 1</h3><p style="margin-top: 0px;">This shows you how <b>LeanSelectableDial</b> can be used to turn objects around an axis like a knob or dial.</p></div><div style="padding-left:70px;"><h3>UI</h3><p style="margin-top: 0px;">This shows you how <b>LeanSelectableDial</b> can be used to turn objects around an axis like a knob or dial.</p></div><div style="padding-left:20px;"><h3>Rotate To Position</h3><p style="margin-top: 0px;">This shows you how <b>LeanSelectableDial</b> can be used to turn objects around an axis like a knob or dial.</p></div><div style="padding-left:70px;"><h3>Under</h3><p style="margin-top: 0px;">This shows you how <b>LeanSelectableDial</b> can be used to turn objects around an axis like a knob or dial.</p></div><div style="padding-left:20px;"><h3>Drag</h3><p style="margin-top: 0px;">This shows you how to modify <b>DragTurn2D</b> to be 1D by setting <b>LeanManualRotate2D/Smooth.Axis B</b> to 0,0,0.</p></div><div style="padding-left:70px;"><h3>Turn 2D</h3><p style="margin-top: 0px;">This shows you how <b>LeanMultiDrag.OnDragDelta</b> can trigger <b>LeanManualRotate.Rotate</b>, allowing you to rotate a GameObject along custom axes.</p></div><div style="padding-left:70px;"><h3>Reset</h3><p style="margin-top: 0px;">This shows you how <b>LeanMultiDrag.OnDragDelta</b> can trigger <b>LeanManualRotate.Rotate</b>, allowing you to rotate a GameObject along custom axes.</p></div><div style="padding-left:20px;"><h3>DragTurn1D</h3><p style="margin-top: 0px;">This shows you how to modify <b>DragTurn2D</b> to be 1D by setting <b>LeanManualRotate2D/Smooth.Axis B</b> to 0,0,0.</p></div><div style="padding-left:70px;"><h3>Step</h3><p style="margin-top: 0px;">This shows you how the <b>DragTurn2D</b> demo scene can be modified to have stepped rotation instead of continuous rotation. This is done using the <b>LeanThresholdDelta</b> component. By changing the <b>LeanMultiSet.OnDelta</b> to <b>LeanThresholdDelta.AddXY</b>, the <b>LeanThresholdDelta.Current</b> value is smoothly incremented. Once this reaches the <b>Threshold</b> with <b>Step</b> enabled, it will invoke the <b>OnDeltaXY</b> event, which sends the stepped values to <b>LeanManualRotate.RotateAB</b>.</p></div><div style="padding-left:20px;"><h3>DragDoors</h3><p style="margin-top: 0px;">This shows you how the <b>Press3D</b> and <b>DragTurn1D</b> demo scene can be combined to make doors that you can open and close by dragging across them. The <b>LeanPitchYaw</b> component\u2019s <b>YawClamp</b> setting to set rotation limits.</p></div><div style="padding-left:20px;"><h3>DragMove1D</h3><p style="margin-top: 0px;">This shows you how the <b>DragMove2D</b> demo scene can be modified to limit translation to 1 axis. This is done by setting the <b>LeanManualTranslate</b> component\u2019s <b>DirectionB</b> setting to 0,0,0.</p></div><div style="padding-left:20px;"><h3>DragMove2D</h3><p style="margin-top: 0px;">This shows you how dragging fingers across the screen can move an object along custom axes. This is done using the <b>LeanMultiDrag</b> component, and having its <b>OnDelta</b> event call the <b>LeanManualTranslate</b> component\u2019s <b>TranslateAB</b> method.</p></div><div style="padding-left:70px;"><h3>Threshold</h3><p style="margin-top: 0px;">This shows you how the <b>LeanThresholdDelta</b> component can be used between the <b>LeanMultiSet</b> and <b>LeanManualTranslate</b> components using events to only move the object when your finger/mouse moves more than 1 unit.</p></div><div style="padding-left:20px;"><h3>DragAlongPath</h3><p style="margin-top: 0px;">This shows you how to drag objects along a <b>LeanPath</b> using the <b>LeanDragTranslateAlong</b> component.</p></div><div style="padding-left:70px;"><h3>Under</h3><p style="margin-top: 0px;">This shows you how to drag objects along a <b>LeanPath</b> using the <b>LeanDragTranslateAlong</b> component.</p></div><div style="padding-left:70px;"><h3>Smooth</h3><p style="margin-top: 0px;">This shows you how to drag objects along a <b>LeanPath</b> using the <b>LeanDragTranslateAlong</b> component.</p></div><div style="padding-left:20px;"><h3>DragUnderAlongPlane</h3><p style="margin-top: 0px;">This shows you how <b>LeanDragTranslateAlong</b> can be used to move objects along a <b>LeanPlane</b>.</p></div><div style="padding-left:70px;"><h3>Snap</h3><p style="margin-top: 0px;">This shows you how the <b>DragAlongPlane</b> demo scene can be modified to allow snapping to a grid.</p></div><div style="padding-left:20px;"><h3>Pull</h3><p style="margin-top: 0px;">This shows you how <b>LeanMultiDrag.OnDragDelta</b> can trigger <b>LeanManualRotate.Rotate</b>, allowing you to rotate a GameObject along custom axes.</p></div><div style="padding-left:70px;"><h3>Turn 2D</h3><p style="margin-top: 0px;">This shows you how <b>LeanMultiDrag.OnDragDelta</b> can trigger <b>LeanManualRotate.Rotate</b>, allowing you to rotate a GameObject along custom axes.</p></div><div style="padding-left:20px;"><h3>Direction</h3><p style="margin-top: 0px;">This shows you how <b>LeanMultiDrag.OnDragDelta</b> can trigger <b>LeanManualRotate.Rotate</b>, allowing you to rotate a GameObject along custom axes.</p></div><div style="padding-left:20px;"><h3>DragTorque</h3><p style="margin-top: 0px;">This shows you how to modify <b>DragTurn2D</b> to be 1D by setting <b>LeanManualRotate2D/Smooth.Axis B</b> to 0,0,0.</p></div><div style="padding-left:20px;"><h3>DragRescale</h3><p style="margin-top: 0px;">This shows you how to modify <b>DragTurn2D</b> to be 1D by setting <b>LeanManualRotate2D/Smooth.Axis B</b> to 0,0,0.</p></div><div style="padding-left:20px;"><h3>DragMeshColor</h3><p style="margin-top: 0px;">This shows you how the <b>Select3D</b> demo scene can be modified to allow vertex color painting. This is done by adding the <b>LeanDragColorMesh</b> component to your selectable objects alongside a <b>MeshFilter</b>.</p></div><div style="padding-left:20px;"><h3>DragMeshDeform</h3><p style="margin-top: 0px;">This shows you how the <b>Select3D</b> demo scene can be modified to allow vertex position shifting. This is done by adding the <b>LeanDragDeformMesh</b> component to your selectable objects alongside a <b>MeshFilter</b>.</p></div><div style="padding-left:20px;"><h3>DropDestroy</h3><p style="margin-top: 0px;">This shows you how <b>Press2DTranslate</b> can be modified so any with <b>LeanSelectableDrop</b> GameObjects get destroyed by <b>LeanDropDestroy</b> when dropped on top.</p></div><div style="padding-left:20px;"><h3>DropDestroyCount</h3><p style="margin-top: 0px;">This shows you how <b>Press2DTranslate</b> can be modified so any with <b>LeanSelectableDrop</b> GameObjects get destroyed by <b>LeanDropDestroy</b> when dropped on top.</p></div><div style="padding-left:20px;"><h3>Chase 3D</h3><p style="margin-top: 0px;">This shows you how the <b>LeanChase</b> component can be used to make the red cube follow fingers around the screen. This is done using the <b>LeanMultiSet</b> component, where the <b>OnPosition</b> event can send a position to the <b>LeanChase.SetPosition</b> method.</p></div><div style="padding-left:70px;"><h3>Under</h3><p style="margin-top: 0px;">This shows you how the <b>Chase 3D</b> and <b>Press3D</b> demo scenes can be combined.</p></div><div style="padding-left:70px;"><h3>Waypoints</h3><p style="margin-top: 0px;">This shows you how to make an object follow different waypoints when you press a button. This is done by placing a <b>Transform</b> in the scene, and having the button's event set the <b>LeanChase.Destination</b> value to the specified waypoint. The GameObject with the LeanChase component will then move toward that point.</p></div><div style="padding-left:20px;"><h3>Chase Rigidbody</h3><p style="margin-top: 0px;">This shows you how to make a <b>Rigidbody</b> chase the fingers touching the screen. This is done using the <b>LeanChase Rigidbody </b> component, where the chase position is driven using the <b>LeanMultiPosition</b> and <b>LeanConvertPosition</b> components. The <b>LeanMultiPosition.OnPosition</b> event is connected to the <b>LeanConvertPosition.Convert</b> method. The <b>LeanConvertPosition.OnPosition</b> event is connected to the <b>LeanChaseRigidbody.SetPosition</b> method.</p></div><div style="padding-left:70px;"><h3>Plane</h3><p style="margin-top: 0px;">This shows you how the <b>Chase Rigidbody</b> demo scene can be modified to allow for dragging along a custom plane, rather than maintaining a constant camera distance. This is done by changing the <b>LeanMultiSet.ScreenDepth</b> setting to <b>PlaneIntercept</b>, and specifying our custom <b>LeanPlane</b> that aligns to the grid.</p></div><div style="padding-left:20px;"><h3>Chase Rigidbody2D</h3><p style="margin-top: 0px;">This shows you how to make a <b>Rigidbody2D</b> chase the fingers touching the screen. This is done using the <b>LeanChaseRigidbody2D</b> component, where the chase position is driven using the <b>LeanMultiPosition</b> and <b>LeanConvertPosition</b> components. The <b>LeanMultiPosition.OnPosition</b> event is connected to the <b>LeanConvertPosition.Convert</b> method. The <b>LeanConvertPosition.OnPosition</b> event is connected to the <b>LeanChaseRigidbody2D.SetPosition</b> method.</p></div><div style="padding-left:20px;"><h3>FollowFinger</h3><p style="margin-top: 0px;">This shows you how <b>LeanSelectable.OnSelect</b> can call <b>LeanFollowFinger.BeginFollowing</b>.</p></div><div style="padding-left:70px;"><h3>Released</h3><p style="margin-top: 0px;">This shows you how the <b>FollowFinger</b> demo scene can be modified to only allow movement when the selecting finger stops touching the screen. This is done by disabling the <b>LeanFollow</b> component, and enabling it from the <b>LeanSelectable.OnDeselect</b> event. Upon completion, the <b>LeanFollow</b> component disables itself from the <b>OnReachedDestination</b> event.</p></div><div style="padding-left:70px;"><h3>Rotation</h3><p style="margin-top: 0px;">This shows you how the <b>FollowFinger</b> demo scene can be modified so the following objects rotate to the direction of the path. This is done by adding the <b>LeanRotateToPosition</b> component to your selectable object. The <b> LeanRotateToPosition .RotateTo</b> setting can be adjusted based on your scene setup, which in this case is a sidescrolling scenario, so the <b>Side2D</b> setting works well.</p></div><div style="padding-left:20px;"><h3>FollowFingerLine</h3><p style="margin-top: 0px;">This shows you how the <b>Line</b> demo scene can be combined with the <b>FollowFinger</b> demo scene, causing an object to spawn and follow the path of a line you draw on the screen. This makes heavy use on the <b>LeanDragLine</b> component's <b>OnReleasedFrom</b> and <b>OnReleasedTo</b> events. These set up the prefab settings before spawning, then spawn when released.</p></div><div style="padding-left:20px;"><h3>Line</h3><p style="margin-top: 0px;">This shows you how the <b>LeanDragLine</b> component can be used to draw a straight line under each finger touching the screen. The line style can be customized using the <b>Prefab</b> setting, which has a <b>LineRenderer</b>.</p></div><div style="padding-left:70px;"><h3>Power</h3><p style="margin-top: 0px;">This shows you how the <b>LeanDragLine</b> can be used to draw a line under each finger.</p></div><div style="padding-left:70px;"><h3>Clamp</h3><p style="margin-top: 0px;">This shows you how the length of the line can be clamped using the <b>LeanDragLine</b> component's <b>LengthMin</b> and <b>LengthMax</b> settings.</p></div><div style="padding-left:70px;"><h3>SpawnThrow 3D</h3><p style="margin-top: 0px;">This shows you how to spawn and throw a <b>Rigidbody</b> when your finger stops touching the screen. This is done using the <b>LeanSpawnBetween</b> component, whose <b>Spawn</b> function can be triggered from the <b>LeanDragLine</b> component's <b>OnReleasedFromTo</b> event.</p></div><div style="padding-left:70px;"><h3>SpawnThrow 2D</h3><p style="margin-top: 0px;">This shows you how to spawn and throw a <b>Rigidbody2D</b> when your finger stops touching the screen. This is done using the <b>LeanSpawnBetween</b> component, whose <b>Spawn</b> function can be triggered from the <b>LeanDragLine</b> component's <b>OnReleasedFromTo</b> event.</p></div><div style="padding-left:20px;"><h3>Target 3D</h3><p style="margin-top: 0px;">This shows you how the <b>Line / Clamp</b> demo scene can be modified so the line always begins at the object center. This is done by enabling the <b>LeanDragLine</b> component's <b>StartAtOrigin</b> setting.</p></div><div style="padding-left:70px;"><h3>Throw</h3><p style="margin-top: 0px;">This shows you how the <b>Target 3D</b> demo scene can be modified to throw a <b>Rigidbody</b> around the screen with a power indicator following each finger. This is done by adding the <b>LeanManualTranslateRigidbody</b> component, and linking the <b>LeanDragLine</b> component's <b>OnReleaseDelta</b> event to the <b>LeanManualTranslateRigidbody.TranslateWorld</b> method.</p></div><div style="padding-left:70px;"><h3>Under</h3><p style="margin-top: 0px;">This shows you how the <b>Select 3D</b> and <b>Target 3D / Throw</b> demo scenes can be combined, allowing you to throw objects under the finger with a strength indicator.</p></div><div style="padding-left:20px;"><h3>Target 2D</h3><p style="margin-top: 0px;">This shows you how the <b>Line / Clamp</b> demo scene can be modified so the line always begins at the object center. This is done by enabling the <b>LeanDragLine</b> component's <b>StartAtOrigin</b> setting.</p></div><div style="padding-left:70px;"><h3>Throw</h3><p style="margin-top: 0px;">This shows you how the <b>Target 3D</b> demo scene can be modified to throw a <b>Rigidbody2D</b> around the screen with a power indicator following each finger. This is done by adding the <b>LeanManualTranslateRigidbody</b> component, and linking the <b>LeanDragLine</b> component's <b>OnReleaseDelta</b> event to the <b>LeanManualTranslateRigidbody.TranslateWorld</b> method.</p></div><div style="padding-left:70px;"><h3>Rotate</h3><p style="margin-top: 0px;">This shows you how the <b>Target 2D / Throw</b> demo scene can be modified to rotate the <b>Rigidbody2D</b> to match the throw indicator. This is done using the <b>LeanRotateToPosition</b> component with a <b>Position</b> setting of <b>ManuallySetPosition</b>, and a <b>RotateTo</b> setting of <b>Side 2D</b>. The rotate to position is manually set using the <b>LeanMultiPull</b> component's <b>OnWorldTo</b> event.</p></div><div style="padding-left:70px;"><h3>Under</h3><p style="margin-top: 0px;">This shows you how the <b>Select 2D</b> and <b>Target 2D / Throw</b> demo scenes can be combined, allowing you to throw objects under the finger with a strength indicator.</p></div><div style="padding-left:20px;"><h3>Pong Launch</h3><p style="margin-top: 0px;">This shows you how the <b>LeanDragLine</b> component's <b>ScreenDepth</b> setting can be set to <b>PathClosest</b>, allowing you to limit the launch angle to the specified path.</p></div><div style="padding-left:20px;"><h3>Reselect Count</h3><p style="margin-top: 0px;">This shows you how <b>LeanSelect.Reselect</b> can be set to <b>Select Again</b>, and how you can use <b>LeanSelect.OnSelect</b> to count how many times it's selected again.</p></div><div style="padding-left:20px;"><h3>Selected Time</h3><p style="margin-top: 0px;">This shows you how the <b>Press To Select</b> demo scene can be modified to show you how long you\u2019ve selected an object for. This is done by adding the <b>LeanSelectableTime</b> component whose <b>OnSeconds</b> event can be used to perform some action. In this scene the <b>LeanFormatString</b> component is used to display the time using UI text.</p></div><div style="padding-left:70px;"><h3>Action</h3><p style="margin-top: 0px;">This shows you how <b>Select2D</b> can be combined with <b>LeanSelectableSelected/Time</b> to trigger <b>LeanSelectable.Deselect</b> after 1 second.</p></div><div style="padding-left:20px;"><h3>DragSelect</h3><p style="margin-top: 0px;">This shows you how <b>LeanDragSelect</b> can select multiple objects using a drag gesture.</p></div><div style="padding-left:70px;"><h3>TransformRelative</h3><p style="margin-top: 0px;">This shows you how the <b>DragSelect</b> and <b>TranslateRelative</b> demo scenes can be combined, allowing screen drags to both allow selection of objects, as well as translation of objects.</p></div><div style="padding-left:70px;"><h3>WithinRange</h3><p style="margin-top: 0px;">This shows you how the <b>LeanDragSelect.MaximumSeparation</b> can be used to only allow you to select objects within range of the previously selected object.</p></div><div style="padding-left:20px;"><h3>SelectionBox</h3><p style="margin-top: 0px;">This shows you how to select objects in the style of strategy games by dragging a selection box across the screen. This is done using the <b>LeanSelectionBox</b> component, where its <b>Root</b> setting is set to your canvas root, and the <b>Prefab</b> setting is set to a selection box prefab that will be spawned when you drag across the screen.</p></div><div style="padding-left:70px;"><h3>Dotted</h3><p style="margin-top: 0px;">This shows you how to select objects in the style of strategy games by dragging a selection box across the screen. This is done using the <b>LeanSelectionBox</b> component, where its <b>Root</b> setting is set to your canvas root, and the <b>Prefab</b> setting is set to a selection box prefab that will be spawned when you drag across the screen.</p></div><div style="padding-left:20px;"><h3>Pickable</h3><p style="margin-top: 0px;">This shows you how the <b>LeanPickable</b> component can be used to detect when you touch a GameObject without using the selection system. This object can then be picked by making a new GameObject with the <b>LeanPick</b> component, whose <b>SelectScreenPosition</b> function can be called from a component that gives you a finger, like the <b>LeanFingerTap</b> component's <b>OnFinger</b> event used in this scene. This pick system doesn't require the <b>LeanSelect/ByFinger</b> or <b>LeanSelectable/ByFinger</b> components to work, so it can be used for more complex scenarios where normal selection alone isn't enough.</p></div><div style="padding-left:70px;"><h3>Down</h3><p style="margin-top: 0px;">This shows you how the <b>Pickable</b> demo scene can be modified to work using the <b>LeanFingerDown</b> component, giving you instant picking that feels more responsive.</p></div><div style="padding-left:70px;"><h3>Press</h3><p style="margin-top: 0px;">This shows you how the <b>Pickable / Down</b> demo scene can be modified to work like press selection. This is done using the <b>LeanMultiUp</b> component with its <b>Use</b> setting set to <b>ManuallyAddedFingers</b>. The <b>LeanPickable.OnFinger</b> event is used to change the object material to indicate selection, and also add the finger via the <b>LeanMultiUp.AddFinger</b> function. The <b>LeanMultiUp.OnFinger</b> event is then used to detect when all fingers go up, and revert the material to its original state.</p></div><div style="padding-left:20px;"><h3>ShapeDetector</h3><p style="margin-top: 0px;">This shows you how to detect drawing of basic letter shapes. This is done using the <b>LeanShapeDetector</b> component, which detects the specified <b>LeanShape</b> component. You can select a shape and click the <b>Draw</b> button to modify it. You can modify the <b>LeanShapeDetector</b>'s <b>DistanceThreshold</b> and <b>ErrorThreshold</b> settings to make the shape easier or more difficult to draw.</p></div><div style="padding-left:70px;"><h3>Loop</h3><p style="margin-top: 0px;">This shows you how <b>LeanShape.ConnectEnds</b> can be enabled. This allows you to make a looped shape.</p></div><div style="padding-left:70px;"><h3>Direction</h3><p style="margin-top: 0px;">This shows you how the <b>ShapeDetector / Loop</b> demo scene can be modified to allow for detection of the drawing direction. This is done using two <b>LeanShapeDetector</b> components, where you change the <b>Direction</b> setting to <b>Forward</b> or <b>Backward</b>. You can then link the <b>OnDetected</b> events to perform custom actions in either scenario.</p></div><div style="padding-left:70px;"><h3>Partial</h3><p style="margin-top: 0px;">This shows you how the <b>LeanShapeDetector.MinimumPoints</b> setting allows you to detect partial shape matches.</p></div><div style="padding-left:20px;"><h3>Finger Swipe</h3><p style="margin-top: 0px;">This shows you how <b>LeanFingerSwipe</b> can trigger <b>LeanSwap</b> to swap between a selection of prefabs.</p></div><div style="padding-left:70px;"><h3>Swap</h3><p style="margin-top: 0px;">This shows you how <b>LeanFingerSwipe</b> can trigger <b>LeanSwap</b> to swap between a selection of prefabs.</p></div><div style="padding-left:70px;"><h3>Move</h3><p style="margin-top: 0px;">This shows you how <b>LeanFingerSwipe.OnSwipeDelta</b> can be linked to <b>LeanManualTranslate.Translate</b>, to translate a GameObject along custom axes.</p></div><div style="padding-left:70px;"><h3>Turn</h3><p style="margin-top: 0px;">This shows you how <b>LeanFingerSwipe.OnSwipeDelta</b> can be linked to <b>LeanManualRotate.Rotate</b>, to rotate a GameObject along custom axes.</p></div><div style="padding-left:70px;"><h3>Translate</h3><p style="margin-top: 0px;">This shows you how to combine <b>Select3D</b> and <b>DragToThrowTarget</b>, allowing you to throw objects around the screen with force indicators.</p></div><div style="padding-left:70px;"><h3>Under</h3><p style="margin-top: 0px;">This shows you how to combine <b>Select3D</b> and <b>DragToThrowTarget</b>, allowing you to throw objects around the screen with force indicators.</p></div><div style="padding-left:70px;"><h3>Translate Rigidbody</h3><p style="margin-top: 0px;">This shows you how to combine <b>Select3D</b> and <b>DragToThrowTarget</b>, allowing you to throw objects around the screen with force indicators.</p></div><div style="padding-left:70px;"><h3>Under</h3><p style="margin-top: 0px;">This shows you how to combine <b>Select3D</b> and <b>DragToThrowTarget</b>, allowing you to throw objects around the screen with force indicators.</p></div><div style="padding-left:70px;"><h3>TranslateRigidbody2D</h3><p style="margin-top: 0px;">This shows you how to combine <b>Select3D</b> and <b>DragToThrowTarget</b>, allowing you to throw objects around the screen with force indicators.</p></div><div style="padding-left:70px;"><h3>Under</h3><p style="margin-top: 0px;">This shows you how to combine <b>Select3D</b> and <b>DragToThrowTarget</b>, allowing you to throw objects around the screen with force indicators.</p></div><div style="padding-left:20px;"><h3>Finger Flick</h3><p style="margin-top: 0px;">This shows you how to instantly detect swipes, even while your finger is still moving across the screen. This is done using the <b>LeanFingerFlick</b> component. You can control the maximum flick duration and minimum flick distance from the <b>LeanTouch</b> component's <b>TapThreshold</b> and <b>SwipeThreshold</b> settings respectively.</p></div><div style="padding-left:70px;"><h3>Rotation</h3><p style="margin-top: 0px;">This shows you how to rotate a UI element based on a screen flick gesture. This is done using the <b>LeanFingerFlick</b> and <b>LeanRoll</b> components, and connecting the <b>LeanFingerFlick.OnDelta</b> event to the <b>LeanRoll.RotateToDelta</b> function.</p></div><div style="padding-left:70px;"><h3>Multiple</h3><p style="margin-top: 0px;">This shows you how the <b>LeanFingerFlick</b> component's <b>Check</b> setting can be set to <b>Multiple</b>. This allows you to detect multiple flicks from the same finger, as long as the finger movement pauses between each flick. The time and movement required between each flick can be controlled using the <b>LeanTouch</b> component's <b>TapThreshold</b> and <b>SwipeThreshold</b> settings.</p></div><div style="padding-left:20px;"><h3>Multi Swipe</h3><p style="margin-top: 0px;">This shows you how to detect multi finger swipe gestures using the <b>LeanMultiSwipe</b> component. This can detect when multiple fingers swipe in parallel, when multiple fingers swipe inward, and when multiple fingers swipe outward.</p></div></p><br><br></div>
<br><br>
<br><br>
<h1>Assets</h1>
<p>Here's a list of all my other assets, please check them out!</p><p>You can also view this list on <a href="http://CarlosWilkes.com/Get/Assets" target="_blank">my Asset Store page</a>.</p>
<div style="overflow:hidden;">
<div style="float: left; padding-right: 20px;"><a href="https://CarlosWilkes.com/Get/LeanGUI" target="_blank"><img src="https://api.assetstore.unity3d.com/affiliate/embed/package/72138/icon" alt="Lean GUI" width="128" height="128" /></a></div>
<a name="LeanGUI"></a><h2>Lean GUI</h2>
<p>Lean GUI is a colllection of components that extend Unity's GUI system, allowing you to rapidly enhance the user experience (UX) of your game's UI.</p>
</div>
<br><div style="overflow:hidden;">
<div style="float: left; padding-right: 20px;"><a href="https://CarlosWilkes.com/Get/LeanTransition" target="_blank"><img src="https://api.assetstore.unity3d.com/affiliate/embed/package/144107/icon" alt="Lean Transition" width="128" height="128" /></a></div>
<a name="LeanTransition"></a><h2>Lean Transition</h2>
<p>Quickly polish your games using Lean Transition. This asset allows you to easily tween or animate almost anything in your game, making it transition smoothly.</p>
</div>
<br><div style="overflow:hidden;">
<div style="float: left; padding-right: 20px;"><a href="https://CarlosWilkes.com/Get/PaintIn3D" target="_blank"><img src="https://api.assetstore.unity3d.com/affiliate/embed/package/26286/icon" alt="Paint in 3D" width="128" height="128" /></a></div>
<a name="PaintIn3D"></a><h2>Paint in 3D</h2>
<p>Paint all your objects using <strong>Paint in 3D</strong> - both in game, and in editor. All features are optimized with GPU accelerated texture painting, so you can enjoy consistent performance, even if you paint your objects one million times!</p>
</div>
<br><div style="overflow:hidden;">
<div style="float: left; padding-right: 20px;"><a href="https://CarlosWilkes.com/Get/LeanPool" target="_blank"><img src="https://api.assetstore.unity3d.com/affiliate/embed/package/35666/icon" alt="Lean Pool" width="128" height="128" /></a></div>
<a name="LeanPool"></a><h2>Lean Pool</h2>
<p>Quickly optimize the performance of your games using Lean Pool. Within minutes you can use this lightweight asset to preload, recycle, and limit the spawning of your prefabs.</p>
</div>
<br><div style="overflow:hidden;">
<div style="float: left; padding-right: 20px;"><a href="https://CarlosWilkes.com/Get/SpaceGraphicsToolkit" target="_blank"><img src="https://api.assetstore.unity3d.com/affiliate/embed/package/4160/icon" alt="Space Graphics Toolkit" width="128" height="128" /></a></div>
<a name="SpaceGraphicsToolkit"></a><h2>Space Graphics Toolkit</h2>
<p>Quickly make the space scene of your dreams using Space Graphics Toolkit. This huge collection of space effects can be customized and combined in any way you like, allowing you to quickly make realistic or fantasy worlds. Each feature has been heavily optimized to run on almost any device and platform.</p>
</div>
<br><div style="overflow:hidden;">
<div style="float: left; padding-right: 20px;"><a href="https://CarlosWilkes.com/Get/LeanTouch" target="_blank"><img src="https://api.assetstore.unity3d.com/affiliate/embed/package/30111/icon" alt="Lean Touch" width="128" height="128" /></a></div>
<a name="LeanTouch"></a><h2>Lean Touch</h2>
<p>Rapidly develop your game with consistent input across desktop & mobile using Lean Touch. This lightweight asset comes with many modular components, allowing you to customize them to your exact project needs!</p>
</div>
<br><div style="overflow:hidden;">
<div style="float: left; padding-right: 20px;"><a href="https://CarlosWilkes.com/Get/LeanLocalization" target="_blank"><img src="https://api.assetstore.unity3d.com/affiliate/embed/package/28504/icon" alt="Lean Localization" width="128" height="128" /></a></div>
<a name="LeanLocalization"></a><h2>Lean Localization</h2>
<p>Lean Localization is a localization library that's designed to be as simple to use as possible for both designers, and programmers.</p>
</div>
<br><div style="overflow:hidden;">
<div style="float: left; padding-right: 20px;"><a href="https://CarlosWilkes.com/Get/LeanGUIShapes" target="_blank"><img src="https://api.assetstore.unity3d.com/affiliate/embed/package/69366/icon" alt="Lean GUI Shapes" width="128" height="128" /></a></div>
<a name="LeanGUIShapes"></a><h2>Lean GUI Shapes</h2>
<p>Lean GUI Shapes allows you to quickly add lines, rounded boxes, polygons, and much more to your GUI!</p>
</div>
<br><div style="overflow:hidden;">
<div style="float: left; padding-right: 20px;"><a href="https://CarlosWilkes.com/Get/Destructible2D" target="_blank"><img src="https://api.assetstore.unity3d.com/affiliate/embed/package/18125/icon" alt="Destructible 2D" width="128" height="128" /></a></div>
<a name="Destructible2D"></a><h2>Destructible 2D</h2>
<p>Unlock the full potential of your 2D games using Destructible 2D, this asset allows you to quickly convert all your boring solid sprites into fully destructible ones!</p>
</div>
<br><div style="overflow:hidden;">
<div style="float: left; padding-right: 20px;"><a href="https://CarlosWilkes.com/Get/PlanetPack" target="_blank"><img src="https://api.assetstore.unity3d.com/affiliate/embed/package/124578/icon" alt="Planet Pack - Space Graphics Toolkit" width="128" height="128" /></a></div>
<a name="PlanetPack"></a><h2>Planet Pack - Space Graphics Toolkit</h2>
<p>This pack contains 26 high detail PBR planets, all finished using the powerful planet features of Space Graphics Toolkit (SGT). This is a standalone package, so SGT is not required. You can even use the included features to turn your own planets into beautiful worlds!</p>
</div>
<br><div style="overflow:hidden;">
<div style="float: left; padding-right: 20px;"><a href="https://CarlosWilkes.com/Get/LeanTouchPlus" target="_blank"><img src="https://api.assetstore.unity3d.com/affiliate/embed/package/72356/icon" alt="Lean Touch+" width="128" height="128" /></a></div>
<a name="LeanTouchPlus"></a><h2>Lean Touch+</h2>
<p>Lean Touch+ is an extension to the popular Lean Touch asset, adding many more example scenes.</p>
</div>
<br><div style="overflow:hidden;">
<div style="float: left; padding-right: 20px;"><a href="https://CarlosWilkes.com/Get/VolumetricAudio" target="_blank"><img src="https://api.assetstore.unity3d.com/affiliate/embed/package/17125/icon" alt="Volumetric Audio" width="128" height="128" /></a></div>
<a name="VolumetricAudio"></a><h2>Volumetric Audio</h2>
<p>Unity sounds only emanate from a single point source. This is great for explosions and footsteps, but quite often you need something more advanced. Volumetric Audio is an easy to use package that allows you to define boxes, spheres, capsules, paths, or meshes that sounds can emanate from.</p>
</div>
<br>
<br><br>
<br><br>
<h1>Versions</h1>
<div style="overflow:hidden;"><a name="2.3.0"></a><h2>2.3.0</h2><div class="tip"><strong>NOTE</strong>&emsp; This is a huge update. Back up your project files before installing.</div><p>Fixed <b>LeanDragTranslateAlong</b> positional drift.<br>Fixed <b>LeanFingerTapQuick</b> adding RectTransform.<br>Added <b>Selection / Select Self / Down</b> demo scene.<br>Improved <b>LeanMultiUp</b> component implementation.<br>Improved <b>LeanDropCount</b> component implementation.<br>Renamed <b>LeanSelectSelf</b> to <b>LeanPickable</b>.</p><br><br></div><div style="overflow:hidden;"><a name="2.2.4"></a><h2>2.2.4</h2><p>Fixed <b>LeanPinchCamera</b> inspector error.<br>Added <b>LeanManualTorque</b> component.<br>Added <b>Drag/DragTorque</b> demo scene.<br>Added <b>LeanManualRescale</b> component.<br>Added <b>Drag/DragRescale</b> demo scene.</p><br><br></div><div style="overflow:hidden;"><a name="2.2.3"></a><h2>2.2.3</h2><p>Added <b>LeanDelayedValue</b> component.<br>Added <b>LeanMultiDown</b> component.<br>Added <b>LeanMultiUp</b> component.<br>Replaced <b>LeanPitchYaw.RotateToFinger</b> with <b>RotateToScreenPosition</b>.<br>Added <b>LeanFirstDown.OnScreen</b> event.<br>Added <b>Camera/Conflicting Controls</b> demo scene.<br>Replaced <b>LeanAnySelected</b> component with <b>LeanSelectedCount</b>.<br>Added <b>LeanSelected</b> component.<br>Added <b>LeanDeselected</b> component.<br>Fixed <b>LeanChaseRigidbody</b> component.<br>Added <b>LeanMultiHeld</b> component.<br>Added <b>Multi Held</b> demo scene.</p><br><br></div><div style="overflow:hidden;"><a name="2.2.2"></a><h2>2.2.2</h2><p>Added <b>LeanSelectableDial.IncrementAngle</b> method.<br>Added <b>LeanPinchCamera.IncrementZoom</b> method.<br>Added <b>Camera / One Finger Zoom</b> demo scene.<br>Fixed <b>LeanConstrainToDirection</b> component.</p><br><br></div><div style="overflow:hidden;"><a name="2.2.1"></a><h2>2.2.1</h2><p>Fixed <b>LeanSelectSelf</b> with <b>Search = GetComponentInParent</b>.<br>Fixed <b>ScreenDepth = PlaneIntercept</b> when using an offset.<br>Fixed <b>LeanMultiDirection.Angle</b> setting.<br>Fixed <b>LeanSelectableDial.Tilt</b> implementation.<br>Added <b>LeanChaseRigidbody2D.Axis</b> setting.</p><br><br></div><div style="overflow:hidden;"><a name="2.2.0"></a><h2>2.2.0</h2><p>Added <b>LeanFirstDownCanvas</b> component.<br>Added <b>LeanLastUpCanvas</b> component.<br>Added <b>LeanMultiDirection</b> component.<br>Added <b>Drag/Direction</b> demo scene.<br>Added <b>LeanSelectableDial.OnAngleChanged</b> event.<br>Fixed <b>LeanPinchCamera</b> inspector.</p><br><br></div><div style="overflow:hidden;"><a name="2.1.9"></a><h2>2.1.9</h2><p>Added multi finger support to <b>LeanDragSelect</b> component.<br>Added <b>LeanManualTranslate.DefaultPosition</b> value.<br>Added <b>LeanManualTranslate.ResetPosition</b> method.<br>Added <b>LeanManualTranslate.SnapToTarget</b> method.<br>Added <b>LeanManualRotate.SnapToTarget</b> method.<br>Added <b>Linear</b> setting to <b>LeanChase</b> components.</p><br><br></div><div style="overflow:hidden;"><a name="2.1.8"></a><h2>2.1.8</h2><p>Added <b>Canvas / Swipe Direction Spawn</b> demo scene.<br>Added <b>LeanPitchYaw.RotateToPosition</b> method.<br>Added <b>LeanPitchYaw.RotateToDirection</b> method.<br>Added <b>LeanSelectSelf.Root</b> setting.<br>Added <b>LeanManualFlick</b> component.</p><br><br></div><div style="overflow:hidden;"><a name="2.1.7"></a><h2>2.1.7</h2><p>Added <b>LeanSelectSelf</b> component.<br>Added <b>Selection / Select Self</b> demo scene.</p><br><br></div><div style="overflow:hidden;"><a name="2.1.6"></a><h2>2.1.6</h2><p>Updated <b>Lean Touch</b>.</p><br><br></div><div style="overflow:hidden;"><a name="2.1.5"></a><h2>2.1.5</h2><p>Separated <b>LeanConstrainToBox</b> from BoxColliders.<br>Added <b>LeanConstrainToAxis</b> component.<br>Added <b>Constrain / Constrain To Box</b> demo scene.<br>Added <b>Constrain / Constrain To Axis</b> demo scene.<br>Rewrote <b>LeanShapeDetector</b> to use a different implementation.<br>Implemented <b>LeanShapeDetector.Use</b> setting.</p><br><br></div><div style="overflow:hidden;"><a name="2.1.4"></a><h2>2.1.4</h2><p>Added <b>Line / Target 2D / Throw / Rotate</b> demo scene.<br>Added <b>Swipe / Finger Flick / Multiple</b> demo scene.<br>Added <b>LeanRotateToPosition.Target</b> setting.<br>Added <b>LeanRotateToPosition.Invert</b> setting.<br>Added <b>LeanFingerFlick.Check</b> setting.<br>Added thresholds to <b>LeanConstrainTo__</b> components for better performance.</p><br><br></div><div style="overflow:hidden;"><a name="2.1.3"></a><h2>2.1.3</h2><p>Updated <b>LeanTouch</b>.<br>Renamed <b>LeanFingerHeld.OnFingerSet</b> to <b>.OnFingerUpdate</b>.<br>Renamed <b>LeanFingerHeld.OnWorldSet</b> to <b>.OnWorldUpdate</b>.<br>Renamed <b>LeanSelectableSelected.OnSelectableSet</b> to <b>.OnSelectableUpdate</b>.</p><br><br></div><div style="overflow:hidden;"><a name="2.1.2"></a><h2>2.1.2</h2><p>Moved main build to Unity <b>2018.4.13f1</b>.<br>Added <b>Constrain / Constrain Rigidbody</b> demo scene.<br>Added <b>Constrain / Constrain Rigidbody2D</b> demo scene.<br>Added <b>LeanFirstDown</b> component.<br>Added <b>LeanLastUp</b> component.<br>Added <b>First Down & Last Up</b> demo scene.<br>Fixed <b>LeanDragTranslateRigidbody2D</b> with perspective cameras.<br>Renamed <b>LeanMultiSet</b> to <b>LeanMultiUpdate</b>.<br>Renamed <b>LeanMultiSetCanvas</b> to <b>LeanMultiSetUpdate</b>.<br>Renamed <b>LeanSelectable.OnSelectSet</b> to <b>OnSelectUpdate</b>.</p><br><br></div><div style="overflow:hidden;"><a name="2.1.1"></a><h2>2.1.1</h2><p>Restructured all demo scenes to be easier to use.<br>Added <b>LeanThresholdPosition</b> component.<br>Added <b>LeanThresholdDelta</b> component.<br>Added <b>DragMove2DThreshold</b> demo scene.<br>Added <b>LeanDragTranslateAlong.Target</b> setting.<br>Added <b>Line / SpawnThrow Rigidbody2D</b> demo scene.<br>Added <b>LeanSpawn.DefaultPosition</b> setting.<br>Added <b>LeanSpawn.DefaultRotation</b> setting.<br>Added <b>LeanMultiSetCanvas.OnWorld</b> event.<br>Fixed <b>LeanFingerHeld.OnPositionUp</b> not being called.<br>Renamed <b>LeanFingerHeld.OnPositionDown</b> to <b>OnWorldDown</b>.<br>Renamed <b>LeanFingerHeld.OnPositionSet</b> to <b>OnWorldSet</b>.<br>Renamed <b>LeanFingerHeld.OnPositionUp</b> to <b>OnWorldUp</b>.</p><br><br></div><div style="overflow:hidden;"><a name="2.1.0"></a><h2>2.1.0</h2><p>Moved main build to Unity 2018.4.0f1.<br>Updated documentation.<br>Added asmdef.<br>Added <b>LeanMultiPinch.Coordinate = ZeroBasedRatio</b> setting.<br>Added <b>LeanMultiPinch.Coordinate = ZeroBasedDistance</b> setting.<br>Added <b>LeanRotateToPosition.Threshold</b> setting.<br>Added <b>DialUI</b> demo scene.</p><br><br></div><div style="overflow:hidden;"><a name="2.0.9"></a><h2>2.0.9</h2><p>Renamed <b>LeanRotateToTransform</b> to <b>LeanRotateToPosition</b>.<br>Fixed <b>ScreenDepth = HeightIntercept</b> axis label.<br>Added <b>LeanRotateToPosition.Position</b> setting.<br>Added <b>LookAt</b> demo scene.<br>Added <b>LookAtSelectable</b> demo scene.</p><br><br></div><div style="overflow:hidden;"><a name="2.0.8"></a><h2>2.0.8</h2><p>Added <b>ConstrainScale</b> demo scene.<br>Added <b>FollowFingerReleased</b> demo scene.<br>Added <b>DragAlongPathSmooth</b> demo scene.<br>Fixed inspector expand buttons in UI Elements.<br>Fixed <b>LeanDragTranslate</b> being slow in some scenarios.<br>Fixed <b>LeanTwistRotate</b> being slow in some scenarios.<br>Fixed <b>LeanPinchScale</b> being slow in some scenarios.<br>Updated common library code.</p><br><br></div><div style="overflow:hidden;"><a name="2.0.7"></a><h2>2.0.7</h2><p>Added <b>FollowFingerReleased</b> demo scene.<br>Added <b>DragAlongPathSmooth</b> demo scene.<br>Fixed inspector expand buttons in UI Elements.<br>Fixed <b>LeanDragTranslate</b> being slow in some scenarios.<br>Fixed <b>LeanTwistRotate</b> being slow in some scenarios.<br>Fixed <b>LeanPinchScale</b> being slow in some scenarios.</p><br><br></div><div style="overflow:hidden;"><a name="2.0.6"></a><h2>2.0.6</h2><p>Fixed bug in LeanHelper.cs that prevents making builds.</p><br><br></div><div style="overflow:hidden;"><a name="2.0.5"></a><h2>2.0.5</h2><p>Updated <b>Common</b> library code.</p><br><br></div><div style="overflow:hidden;"><a name="2.0.4"></a><h2>2.0.4</h2><p>Updated <b>Lean Touch</b> code.</p><br><br></div><div style="overflow:hidden;"><a name="2.0.3"></a><h2>2.0.3</h2><p>Added <b>MultiTwist</b> demo scene.<br>Added <b>MultiTwistOneFinger</b> demo scene.<br>Added <b>MultiTwist.OneFinger</b> setting.<br>Fixed <b>MultiSwipe</b> demo scene.<br>Fixed <b>MultiTap</b> demo scene.</p><br><br></div><div style="overflow:hidden;"><a name="2.0.2"></a><h2>2.0.2</h2><p>Added <b>CanvasSwipeMove</b> demo scene.<br>Fixed <b>LeanSelectable.IsolateSelectingFingers</b> when using <b>RequiredFingerCount</b>.<br>Fixed Added <b>LeanSelectableBehaviour</b> error when missing LeanSelectable.<br>Added <b>LeanSelectable.Register</b> for manual registration.<br>Added <b>LeanSelectable.Unregister</b> for manual unregistration.<br>Added <b>LeanTouch.OnFingerInactive</b> event.</p><br><br></div><div style="overflow:hidden;"><a name="2.0.1"></a><h2>2.0.1</h2><p>Added <b>SelectionBoxDotted</b> demo scene.<br>Added <b>PullTurn2D</b> demo scene.<br>Added <b>LeanMultiPull</b> component.<br>Improved <b>Dial</b> demo scene.<br>Improved <b>DialTrigger</b> demo scene.<br>Improved <b>SelectionBox</b> demo scene.</p><br><br></div><div style="overflow:hidden;"><a name="2.0.0"></a><h2>2.0.0</h2><div class="tip"><strong>NOTE</strong>&emsp; This is a <b>MAJOR</b> update to LeanTouch. I recommend you only use this in new projects.</div><p>Redesigned all demo scenes.<br>Added smoothing/dampening to all base components.<br>Removed all <b>___Smooth</b> versions of components.<br>Renamed <b>IDroppable</b> to <b>IDropHandler</b>.<br>Renamed <b>LeanCameraDolly</b> to <b>LeanMaintainDistance</b>.<br>Removed <b>LeanConstrainToBox</b> (use <b>LeanConstrainToCollider</b> instead).<br>Renamed <b>LeanFollowSmooth</b> to <b>LeanFollow</b>.<br>Renamed <b>LeanCanvasFingers</b> to <b>LeanFingerDownCanvas</b>.<br>Renamed <b>LeanTranslateRigidbody</b> to <b>LeanDragTranslateRigidbody</b>.<br>Renamed <b>LeanTranslateRigidbody2D</b> to <b>LeanDragTranslateRigidbody2D</b>.<br>Removed <b>LeanPitchYawSwipe</b> component.<br>Removed <b>LeanMultiSetCanvas</b> (use <b>LeanFingerDownCanvas</b> + <b>LeanMultiSet</b> instead).<br>Merged <b>LeanCanvasArrowSmooth</b> into <b>LeanRoll</b>.<br>Merged <b>LeanTranslateSmooth</b> into <b>LeanDragTranslate</b>.<br>Merged <b>LeanCameraZoomSmooth</b> into <b>LeanPinchZoom</b>.<br>Merged <b>LeanCameraMoveSmooth</b> into <b>LeanDragMove</b>.<br>Merged <b>LeanFingerLineFade</b> into <b>LeanFingerLine</b>.<br>Merged <b>LeanFingerTrailFade</b> into <b>LeanFingerTrail</b>.</p><br><br></div>
<br><br>
<br><br>
<h1>Components</h1>
<div style="overflow:hidden;"><a name="IDropHandler"></a><h2>IDropHandler</h2><p>Any component implementing this interface will make it compatible with LeanSelectableDrop, allowing you to perform a specific action when the current object is dropped on something.</p><br><br></div><div style="overflow:hidden;"><a name="LeanDragColorMesh"></a><h2>LeanDragColorMesh</h2><p>This script allows you to paint the vertices of the current MeshFilter's mesh.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerFilter</b>
<br>
<span style="">Use</span>
</h2>
<p>The method used to find fingers to use with this component. See LeanFingerFilter documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Color</b>
<br>
<span style="">PaintColor</span>
</h2>
<p>The color you want to paint the hit triangles.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Camera</b>
<br>
<span style="">Camera</span>
</h2>
<p>The camera this component will calculate using.</p><p>None/null = MainCamera.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveAllFingers</span>
<br>
<b></b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove all fingers.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanDragDeformMesh"></a><h2>LeanDragDeformMesh</h2><p>This script allows you to drag mesh vertices using finger drags.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerFilter</b>
<br>
<span style="">Use</span>
</h2>
<p>The method used to find fingers to use with this component. See LeanFingerFilter documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">ScaledRadius</span>
</h2>
<p>Radius around the finger the vertices will be moved in scaled screen space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">ApplyToMeshCollider</span>
</h2>
<p>Should mesh deformation be applied to an attached MeshCollider?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Camera</b>
<br>
<span style="">Camera</span>
</h2>
<p>The camera this component will calculate using.</p><p>None/null = MainCamera.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveAllFingers</span>
<br>
<b></b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove all fingers.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanDragLine"></a><h2>LeanDragLine</h2><p>This component modifies LeanDragTrail to draw straight lines.</p><div class="tip"><strong>NOTE</strong>&emsp; This requires you to enable LeanTouch.RecordFingers.</div><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">WidthScale</span>
</h2>
<p>The StartWidth and EndWidth values will be increased by this value multiplied by the line length.</p><p>0 = No change.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">LengthMin</span>
</h2>
<p>The minimum length of the straight line in world space.</p><p>-1 = Unrestricted.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">LengthMax</span>
</h2>
<p>The maximum length of the straight line in world space.</p><p>-1 = Unrestricted.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">StartAtOrigin</span>
</h2>
<p>Enable this if the line should begin from this Transform's position.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">Invert</span>
</h2>
<p>Drag the line backwards?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnReleasedFrom</span>
</h2>
<p>This event gets called when a trail drawing finger goes up.</p><p>Vector3 = Start world point.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnReleasedTo</span>
</h2>
<p>This event gets called when a trail drawing finger goes up. The parameter contains the end point in world space.</p><p>Vector3 = End world point.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnReleasedDelta</span>
</h2>
<p>This event gets called when a trail drawing finger goes up. The parameter contains the end point in world space.</p><p>Vector3 = Vector between start and end world points.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Vector3Event</b>
<br>
<span style="">OnReleasedFromTo</span>
</h2>
<p>This event gets called when a trail drawing finger goes up.</p><p>Vector3 = Start point in world space.</p><p>Vector3 = End point in world space.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanDragSelect"></a><h2>LeanDragSelect</h2><p>This component allows you to select multiple objects by dragging across the screen through them.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanSelectByFinger</b>
<br>
<span style="">Select</span>
</h2>
<p>The select component that will be used.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">RequireNoSelectables</span>
</h2>
<p>If you begin dragging while objects are already selected, skip?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">RequireInitialSelection</span>
</h2>
<p>If you begin dragging on a point that isn't above a selectable object, skip?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">DeselectAllAtStart</span>
</h2>
<p>Automatically deselect all objects when the drag starts?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">MaximumSeparation</span>
</h2>
<p>Must the next selected object be within a specified world space distance?\n\n0 = Any distance.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanDragTranslateAlong"></a><h2>LeanDragTranslateAlong</h2><p>This component allows you to translate the current GameObject along the specified surface.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">Transform</b>
<br>
<span style="">Target</span>
</h2>
<p>If you want this component to work on a different <b>Transform</b>, then specify it here. This can be used to improve organization if your GameObject already has many components.</p><p>None/null = Current Transform.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerFilter</b>
<br>
<span style="">Use</span>
</h2>
<p>The method used to find fingers to use with this component. See LeanFingerFilter documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanScreenDepth</b>
<br>
<span style="">ScreenDepth</span>
</h2>
<p>The method used to find world coordinates from a finger. See LeanScreenDepth documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">TrackScreenPosition</span>
</h2>
<p>If your ScreenDepth settings cause the position values to clamp, there will be a difference between where the finger is and where the object is. Should this difference be tracked?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">Damping</span>
</h2>
<p>If you want this component to change smoothly over time, then this allows you to control how quick the changes reach their target value.</p><p>-1 = Instantly change.</p><p>1 = Slowly change.</p><p>10 = Quickly change.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveAllFingers</span>
<br>
<b></b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove all fingers.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanDragTranslateRigidbody"></a><h2>LeanDragTranslateRigidbody</h2><p>This component allows you to drag this rigidbody.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerFilter</b>
<br>
<span style="">Use</span>
</h2>
<p>The method used to find fingers to use with this component. See LeanFingerFilter documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Camera</b>
<br>
<span style="">Camera</span>
</h2>
<p>The camera this component will calculate using.</p><p>None/null = MainCamera.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">Damping</span>
</h2>
<p>If you want this component to change smoothly over time, then this allows you to control how quick the changes reach their target value.</p><p>-1 = Instantly change.</p><p>1 = Slowly change.</p><p>10 = Quickly change.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveAllFingers</span>
<br>
<b></b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove all fingers.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanDragTranslateRigidbody2D"></a><h2>LeanDragTranslateRigidbody2D</h2><p>This component allows you to translate the current Rigidbody2D GameObject.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerFilter</b>
<br>
<span style="">Use</span>
</h2>
<p>The method used to find fingers to use with this component. See LeanFingerFilter documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Camera</b>
<br>
<span style="">Camera</span>
</h2>
<p>The camera this component will calculate using.</p><p>None/null = MainCamera.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">Damping</span>
</h2>
<p>If you want this component to change smoothly over time, then this allows you to control how quick the changes reach their target value.</p><p>-1 = Instantly change.</p><p>1 = Slowly change.</p><p>10 = Quickly change.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveAllFingers</span>
<br>
<b></b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove all fingers.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanDrop"></a><h2>LeanDrop</h2><p>This component implements the 'IDroppable' interface, and will fire events when you drop something on it.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">GameObjectLeanFingerEvent</b>
<br>
<span style="">OnDropped</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>GameObject = The GameObject instance this was dropped.</p><p>LeanFinger = The LeanFinger instance this was used to drop the specified GameObject.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanDropCount"></a><h2>LeanDropCount</h2><p>This component implements the 'IDroppable' interface, and will count the amount of times you drop a GameObject with the LeanSelectableDrop component on it.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">int</b>
<br>
<span style="">Count</span>
</h2>
<p>The amount of times you've dropped an object on this.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">IntEvent</b>
<br>
<span style="">OnCount</span>
</h2>
<p>When the amount of selected objects changes, this event is invoked with the current count.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">int</b>
<br>
<span style="">MatchMin</span>
</h2>
<p>The minimum amount of objects that must be selected for a match.</p><p>-1 = Max.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">int</b>
<br>
<span style="">MatchMax</span>
</h2>
<p>The maximum amount of objects that can be selected for a match.</p><p>-1 = Max.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">UnityEvent</b>
<br>
<span style="">OnMatch</span>
</h2>
<p>When the amount of selected objects matches the <b>RequiredCount</b>, this event will be invoked.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">UnityEvent</b>
<br>
<span style="">OnUnmatch</span>
</h2>
<p>When the amount of selected objects no longer matches the <b>RequiredCount</b>, this event will be invoked.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanFingerDownCanvas"></a><h2>LeanFingerDownCanvas</h2><p>This component calls OnDown when a finger begins touching the screen on top of this UI element.</p><div class="tip"><strong>NOTE</strong>&emsp; This requires you to enable the RaycastTarget setting on your UI graphic.</div><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreStartedOverGui</span>
</h2>
<p>Ignore fingers with StartedOverGui?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanSelectable</b>
<br>
<span style="">RequiredSelectable</span>
</h2>
<p>If the specified object is set and isn't selected, then this component will do nothing.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerEvent</b>
<br>
<span style="">OnFinger</span>
</h2>
<p>Called on the first frame the conditions are met.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanScreenDepth</b>
<br>
<span style="">ScreenDepth</span>
</h2>
<p>The method used to find world coordinates from a finger. See LeanScreenDepth documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorld</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>Vector3 = Start point based on the ScreenDepth settings.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanFingerFlick"></a><h2>LeanFingerFlick</h2><p>This component detects swipes while the finger is touching the screen.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreStartedOverGui</span>
</h2>
<p>Ignore fingers with StartedOverGui?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreIsOverGui</span>
</h2>
<p>Ignore fingers with OverGui?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanSelectable</b>
<br>
<span style="">RequiredSelectable</span>
</h2>
<p>If the specified object is set and isn't selected, then this component will do nothing.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">CheckType</b>
<br>
<span style="">Check</span>
</h2>
<p>This allows you to choose how the flick will be detected.</p><p>Default = Detects one flick within the current <b>TapThreshold</b> time.</p><p>IgnoreAge = You can hold the finger for any duration before flicking.</p><p>Multiple = You can stop moving the finger for <b>TapThreshold</b> seconds and perform additional flicks.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanFingerHeld"></a><h2>LeanFingerHeld</h2><p>This component fires events if a finger has been held for a certain amount of time without moving.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreStartedOverGui</span>
</h2>
<p>Ignore fingers with StartedOverGui?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreIsOverGui</span>
</h2>
<p>Ignore fingers with OverGui?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanSelectable</b>
<br>
<span style="">RequiredSelectable</span>
</h2>
<p>If the specified object is set and isn't selected, then this component will do nothing.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">MinimumAge</span>
</h2>
<p>The finger must be held for this many seconds.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">MaximumMovement</span>
</h2>
<p>The finger cannot move more than this many pixels relative to the reference DPI.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerEvent</b>
<br>
<span style="">OnFingerDown</span>
</h2>
<p>Called on the first frame the conditions are met.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerEvent</b>
<br>
<span style="">OnFingerUpdate</span>
</h2>
<p>Called on every frame the conditions are met.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerEvent</b>
<br>
<span style="">OnFingerUp</span>
</h2>
<p>Called on the last frame the conditions are met.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanScreenDepth</b>
<br>
<span style="">ScreenDepth</span>
</h2>
<p>The method used to find world coordinates from a finger. See LeanScreenDepth documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorldDown</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>Vector3 = Start point based on the ScreenDepth settings.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorldUpdate</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>Vector3 = Current point based on the ScreenDepth settings.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorldUp</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>Vector3 = End point based on the ScreenDepth settings.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanFingerTapExpired"></a><h2>LeanFingerTapExpired</h2><p>This script calls the OnFingerTap event when a finger expires after it's tapped a specific amount of times.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreStartedOverGui</span>
</h2>
<p>Ignore fingers with StartedOverGui?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreIsOverGui</span>
</h2>
<p>Ignore fingers with OverGui?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanSelectable</b>
<br>
<span style="">RequiredSelectable</span>
</h2>
<p>If the specified object is set and isn't selected, then this component will do nothing.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">int</b>
<br>
<span style="">RequiredTapCount</span>
</h2>
<p>How many times must this finger tap before OnTap gets called?</p><p>0 = Every time (keep in mind OnTap will only be called once if you use this).</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">int</b>
<br>
<span style="">RequiredTapInterval</span>
</h2>
<p>How many times repeating must this finger tap before OnTap gets called?</p><p>0 = Every time (e.g. a setting of 2 means OnTap will get called when you tap 2 times, 4 times, 6, 8, 10, etc).</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerEvent</b>
<br>
<span style="">OnFinger</span>
</h2>
<p>Called on the first frame the conditions are met.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">IntEvent</b>
<br>
<span style="">OnCount</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>Int = The finger tap count.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanScreenDepth</b>
<br>
<span style="">ScreenDepth</span>
</h2>
<p>The method used to find world coordinates from a finger. See LeanScreenDepth documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorld</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>Vector3 = Start point based on the ScreenDepth settings.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanFingerTapQuick"></a><h2>LeanFingerTapQuick</h2><p>This component allows you to detect when a finger begins touching the screen after it's done a specific amount of taps. This creates the effect of instantly detecting this tap.</p><div class="tip"><strong>NOTE</strong>&emsp; This component can only be used to detect the last tap.</div><p>For example, if you want to detect single and double taps, then this component can only be used to detect double taps.</p><p>If you want to detect prior taps, then you must use the <b>LeanFingerTapExpired</b> component.</p><p>The reason for this is because this component <b>instantly</b> triggers when you begin touching the screen, so it cannot know how many times you will tap after.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreStartedOverGui</span>
</h2>
<p>Ignore fingers with StartedOverGui?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanSelectable</b>
<br>
<span style="">RequiredSelectable</span>
</h2>
<p>If the specified object is set and isn't selected, then this component will do nothing.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">int</b>
<br>
<span style="">RequiredTapCount</span>
</h2>
<p>How many taps must the finger have already performed?</p><p>1 = One previous tap, making this component detect the second quick tap.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerEvent</b>
<br>
<span style="">OnFinger</span>
</h2>
<p>Called on the first frame the conditions are met.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanScreenDepth</b>
<br>
<span style="">ScreenDepth</span>
</h2>
<p>The method used to find world coordinates from a finger. See LeanScreenDepth documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorld</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>Vector3 = Start point based on the ScreenDepth settings.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector2Event</b>
<br>
<span style="">OnScreen</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>Vector2 = Screen position.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanFirstDown"></a><h2>LeanFirstDown</h2><p>This component allows you to detect when the first finger begins touching the screen.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreStartedOverGui</span>
</h2>
<p>Ignore fingers with StartedOverGui?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanSelectable</b>
<br>
<span style="">RequiredSelectable</span>
</h2>
<p>If the specified object is set and isn't selected, then this component will do nothing.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerEvent</b>
<br>
<span style="">OnFinger</span>
</h2>
<p>This event will be called if the above conditions are met when you first touch the screen.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanScreenDepth</b>
<br>
<span style="">ScreenDepth</span>
</h2>
<p>The method used to find world coordinates from a finger. See LeanScreenDepth documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorld</span>
</h2>
<p>This event will be called if the above conditions are met when you first touch the screen.</p><p>Vector3 = Finger position in world space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector2Event</b>
<br>
<span style="">OnScreen</span>
</h2>
<p>This event will be called if the above conditions are met when you first touch the screen.</p><p>Vector2 = Finger position in screen space.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanFirstDownCanvas"></a><h2>LeanFirstDownCanvas</h2><p>This component allows you to detect when the first finger begins touching the current UI element.</p><div class="tip"><strong>NOTE</strong>&emsp; This requires you to enable the RaycastTarget setting on your UI graphic.</div><br><br></div><div style="overflow:hidden;"><a name="LeanGestureToggle"></a><h2>LeanGestureToggle</h2><p>This component will enable/disable the target pinch and twist components based on total pinch and twist gestures, like mobile map applications.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerFilter</b>
<br>
<span style="">Use</span>
</h2>
<p>The method used to find fingers to use with this component. See LeanFingerFilter documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">EnableWithoutIsolation</span>
</h2>
<p>If one specific gesture hasn't been isolated yet, keep them all enabled?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">MonoBehaviour</b>
<br>
<span style="">DragComponent</span>
</h2>
<p>The component that will be enabled/disabled when dragging.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">DragThreshold</span>
</h2>
<p>The amount of drag required to enable dragging mode.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">MonoBehaviour</b>
<br>
<span style="">PinchComponent</span>
</h2>
<p>The component that will be enabled/disabled when pinching.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">PinchThreshold</span>
</h2>
<p>The amount of pinch required to enable twisting in scale (e.g. 0.1 = 0.9 to 1.1).</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">MonoBehaviour</b>
<br>
<span style="">TwistComponent</span>
</h2>
<p>The component that will be enabled/disabled when twisting.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">TwistThreshold</span>
</h2>
<p>The amount of twist required to enable twisting in degrees.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">TwistWithPinch</span>
</h2>
<p>Enable twist component when pinch component is activated?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveAllFingers</span>
<br>
<b></b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove all fingers.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanLastUp"></a><h2>LeanLastUp</h2><p>This component allows you to detect when the last finger stops touching the screen.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreStartedOverGui</span>
</h2>
<p>Ignore fingers with StartedOverGui?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanSelectable</b>
<br>
<span style="">RequiredSelectable</span>
</h2>
<p>If the specified object is set and isn't selected, then this component will do nothing.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerEvent</b>
<br>
<span style="">OnFinger</span>
</h2>
<p>This event will be called if the above conditions are met when you finish touching the screen.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanScreenDepth</b>
<br>
<span style="">ScreenDepth</span>
</h2>
<p>The method used to find world coordinates from a finger. See LeanScreenDepth documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorld</span>
</h2>
<p>This event will be called if the above conditions are met when you finish touching the screen.</p><p>Vector2 = Finger position in world space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector2Event</b>
<br>
<span style="">OnScreen</span>
</h2>
<p>This event will be called if the above conditions are met when you finish touching the screen.</p><p>Vector2 = Finger position in screen space.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanLastUpCanvas"></a><h2>LeanLastUpCanvas</h2><p>This component allows you to detect when the last finger stops touching the current UI element.</p><div class="tip"><strong>NOTE</strong>&emsp; This requires you to enable the RaycastTarget setting on your UI graphic.</div><br><br></div><div style="overflow:hidden;"><a name="LeanManualFlick"></a><h2>LeanManualFlick</h2><p>This component works like LeanFingerSwipe, but you must manually add fingers from components like LeanFingerDown, LeanFingerDownCanvas, etc.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreIsOverGui</span>
</h2>
<p>Ignore fingers with OverGui?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanSelectable</b>
<br>
<span style="">RequiredSelectable</span>
</h2>
<p>If the specified object is set and isn't selected, then this component will do nothing.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">CheckType</b>
<br>
<span style="">Check</span>
</h2>
<p>This allows you to choose how the flick will be detected.</p><p>Default = Detects one flick within the current <b>TapThreshold</b> time.</p><p>IgnoreAge = You can hold the finger for any duration before flicking.</p><p>Multiple = You can stop moving the finger for <b>TapThreshold</b> seconds and perform additional flicks.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>This method allows you to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>This method allows you to manually remove a finger.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanManualSwipe"></a><h2>LeanManualSwipe</h2><p>This component works like LeanFingerSwipe, but you must manually add fingers from components like LeanFingerDown, LeanFingerDownCanvas, etc.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreIsOverGui</span>
</h2>
<p>Ignore fingers with OverGui?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanSelectable</b>
<br>
<span style="">RequiredSelectable</span>
</h2>
<p>If the specified object is set and isn't selected, then this component will do nothing.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>This method allows you to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>This method allows you to manually remove a finger.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanMouseWheel"></a><h2>LeanMouseWheel</h2><p>This component allows you to add mouse wheel control to other components.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanSelectable</b>
<br>
<span style="">RequiredSelectable</span>
</h2>
<p>Do nothing if this LeanSelectable isn't selected?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">int</b>
<br>
<span style="">RequiredMouseButton</span>
</h2>
<p>When using simulated fingers, should they be created from a specific mouse button?</p><p>-1 = Ignore.</p><p>0 = Left Mouse.</p><p>1 = Right Mouse.</p><p>2 = Middle Mouse.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">ModifyType</b>
<br>
<span style="">Modify</span>
</h2>
<p>Should the scroll delta be modified before use?</p><p>Sign = The swipe delta will either be 1 or -1.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">Multiplier</span>
</h2>
<p>This final delta value will be multiplied by this.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">CoordinateType</b>
<br>
<span style="">Coordinate</span>
</h2>
<p>The coordinate space of the output delta values.</p><p>ZeroBased = Scrolling where 0 means no scroll.</p><p>OneBased = ZeroBased + 1. Scrolling where 1 means no scroll. This is suitable for use with components where you multiply a value.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">FloatEvent</b>
<br>
<span style="">OnDelta</span>
</h2>
<p>Called when the mouse scrolls.</p><p>Float = Scroll delta.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanMultiDirection"></a><h2>LeanMultiDirection</h2><p>This component allows you to get the pinch of all fingers.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerFilter</b>
<br>
<span style="">Use</span>
</h2>
<p>The method used to find fingers to use with this component. See LeanFingerFilter documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreIfStatic</span>
</h2>
<p>If there is no movement, ignore it?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">Angle</span>
</h2>
<p>The angle we want to detect movement along.</p><p>0 = Up.</p><p>90 = Right.</p><p>180 = Down.</p><p>270 = Left.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">OneWay</span>
</h2>
<p>Set delta to 0 if it goes negative?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">CoordinateType</b>
<br>
<span style="">Coordinate</span>
</h2>
<p>The coordinate space of the <b>OnDelta</b> values.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">Multiplier</span>
</h2>
<p>The swipe delta will be multiplied by this value.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">FloatEvent</b>
<br>
<span style="">OnDelta</span>
</h2>
<p>This event is invoked when the requirements are met.</p><p>Float = Position Delta based on your Coordinate setting.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveAllFingers</span>
<br>
<b></b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove all fingers.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanMultiDown"></a><h2>LeanMultiDown</h2><p>This component allows you to detect when a specific amount of fingers begin touching the screen.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreStartedOverGui</span>
</h2>
<p>Ignore fingers with StartedOverGui?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanSelectable</b>
<br>
<span style="">RequiredSelectable</span>
</h2>
<p>If the specified object is set and isn't selected, then this component will do nothing.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">int</b>
<br>
<span style="">RequiredCount</span>
</h2>
<p>The amount of fingers we are interested in.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerListEvent</b>
<br>
<span style="">OnFingers</span>
</h2>
<p>This event will be called if the above conditions are met when you first touch the screen.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanScreenDepth</b>
<br>
<span style="">ScreenDepth</span>
</h2>
<p>The method used to find world coordinates from a finger. See LeanScreenDepth documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorld</span>
</h2>
<p>This event will be called if the above conditions are met when you first touch the screen.</p><p>Vector3 = Finger position in world space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector2Event</b>
<br>
<span style="">OnScreen</span>
</h2>
<p>This event will be called if the above conditions are met when you first touch the screen.</p><p>Vector2 = Finger position in screen space.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanMultiHeld"></a><h2>LeanMultiHeld</h2><p>This component allows you to detect when a specific amount of fingers begin touching the screen.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreStartedOverGui</span>
</h2>
<p>Ignore fingers with StartedOverGui?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreIsOverGui</span>
</h2>
<p>Ignore fingers with OverGui?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanSelectable</b>
<br>
<span style="">RequiredSelectable</span>
</h2>
<p>If the specified object is set and isn't selected, then this component will do nothing.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">int</b>
<br>
<span style="">RequiredCount</span>
</h2>
<p>The amount of fingers we are interested in.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">MinimumAge</span>
</h2>
<p>The finger must be held for this many seconds.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">MaximumMovement</span>
</h2>
<p>The finger cannot move more than this many pixels relative to the reference DPI.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerListEvent</b>
<br>
<span style="">OnFingersDown</span>
</h2>
<p>This event will be called if the above conditions are met when you begin holding fingers down.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerListEvent</b>
<br>
<span style="">OnFingersUpdate</span>
</h2>
<p>This event will be called if the above conditions are met when you begin holding fingers down.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerListEvent</b>
<br>
<span style="">OnFingersUp</span>
</h2>
<p>This event will be called if the above conditions are no longer met.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanScreenDepth</b>
<br>
<span style="">ScreenDepth</span>
</h2>
<p>The method used to find world coordinates from a finger. See LeanScreenDepth documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorldDown</span>
</h2>
<p>This event will be called if the above conditions are met when you first touch the screen.</p><p>Vector3 = Finger position in world space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorldUpdate</span>
</h2>
<p>This event will be called if the above conditions are met when you first touch the screen.</p><p>Vector3 = Finger position in world space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorldUp</span>
</h2>
<p>This event will be called if the above conditions are met when you first touch the screen.</p><p>Vector3 = Finger position in world space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector2Event</b>
<br>
<span style="">OnScreenDown</span>
</h2>
<p>This event will be called if the above conditions are met when you first touch the screen.</p><p>Vector2 = Finger position in screen space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector2Event</b>
<br>
<span style="">OnScreenUpdate</span>
</h2>
<p>This event will be called if the above conditions are met when you first touch the screen.</p><p>Vector2 = Finger position in screen space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector2Event</b>
<br>
<span style="">OnScreenUp</span>
</h2>
<p>This event will be called if the above conditions are met when you first touch the screen.</p><p>Vector2 = Finger position in screen space.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanMultiPinch"></a><h2>LeanMultiPinch</h2><p>This component allows you to get the pinch of all fingers.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerFilter</b>
<br>
<span style="">Use</span>
</h2>
<p>The method used to find fingers to use with this component. See LeanFingerFilter documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreIfStatic</span>
</h2>
<p>If there is no pinching, ignore it?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">CoordinateType</b>
<br>
<span style="">Coordinate</span>
</h2>
<p>OneBasedScale = Scale (1 = no change, 2 = double size, 0.5 = half size).</p><p>OneBasedReciprocal = 1 / Scale (1 = no change, 2 = half size, 0.5 = double size).</p><p>ZeroBasedScale = Scale - 1 (0 = no change, 1 = double size, -0.5 = half size).</p><p>ZeroBasedRatio = 1 / Scale - 1 (0 = no change, 1 = half size, -0.5 = double size).</p><p>ZeroBasedDistance = Linear change in distance (0 = no change, 10 = 10 pixel larger radius, -10 = 10 pixel smaller radius).</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">Multiplier</span>
</h2>
<p>The swipe delta will be multiplied by this value.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">FloatEvent</b>
<br>
<span style="">OnPinch</span>
</h2>
<p>This event is invoked when the requirements are met.</p><p>Float = Pinch value based on your Scale setting.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveAllFingers</span>
<br>
<b></b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove all fingers.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanMultiPull"></a><h2>LeanMultiPull</h2><p>This component allows you to perform a continuous action based on the current position of the fingers relative to where they started.</p><p>This allows you to perform actions like an invisible joystick.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerFilter</b>
<br>
<span style="">Use</span>
</h2>
<p>The method used to find fingers to use with this component. See LeanFingerFilter documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">CoordinateType</b>
<br>
<span style="">Coordinate</span>
</h2>
<p>The coordinate space of the OnDelta values.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">Multiplier</span>
</h2>
<p>The delta values will be multiplied by this when output.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">ScaleByTime</span>
</h2>
<p>If you enable this then the delta values will be multiplied by Time.deltaTime. This allows you to maintain frame rate independent actions.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector2Event</b>
<br>
<span style="">OnVector</span>
</h2>
<p>This event is invoked when the requirements are met.</p><p>Vector2 = Position Delta based on your Delta setting.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">FloatEvent</b>
<br>
<span style="">OnDistance</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>Float = The distance/magnitude/length of the swipe delta vector.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanScreenDepth</b>
<br>
<span style="">ScreenDepth</span>
</h2>
<p>The method used to find world coordinates from a finger. See LeanScreenDepth documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorldFrom</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>Vector3 = Start point in world space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorldTo</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>Vector3 = End point in world space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorldDelta</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>Vector3 = The vector between the start and end points in world space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Vector3Event</b>
<br>
<span style="">OnWorldFromTo</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>Vector3 = Start point in world space.</p><p>Vector3 = End point in world space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveAllFingers</span>
<br>
<b></b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove all fingers.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanMultiSwipe"></a><h2>LeanMultiSwipe</h2><p>This script calculates the multi-swipe event.</p><p>A multi-swipe is where you swipe multiple fingers at the same time, and OnSwipe gets called when the first finger is released from the screen.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerFilter</b>
<br>
<span style="">Use</span>
</h2>
<p>The method used to find fingers to use with this component. See LeanFingerFilter documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">ScaledDistanceThreshold</span>
</h2>
<p>Each finger touching the screen must have moved at least this distance for a multi swipe to be considered. This prevents the scenario where multiple fingers are touching, but only one swipes.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">ParallelAngleThreshold</span>
</h2>
<p>This allows you to set the maximum angle between parallel swiping fingers for the OnSwipeParallel event to be fired.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">PinchScaledDistanceThreshold</span>
</h2>
<p>This allows you to set the minimum pinch distance for the OnSwipeIn and OnSwipeOut events to be fired.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveAllFingers</span>
<br>
<b></b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove all fingers.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanMultiTap"></a><h2>LeanMultiTap</h2><p>This script calculates the multi-tap event.</p><p>A multi-tap is where you press and release at least one finger at the same time.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerFilter</b>
<br>
<span style="">Use</span>
</h2>
<p>The method used to find fingers to use with this component. See LeanFingerFilter documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">UnityEvent</b>
<br>
<span style="">OnTap</span>
</h2>
<p>Called when a multi-tap occurs.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">IntEvent</b>
<br>
<span style="">OnCount</span>
</h2>
<p>Called when a multi-tap occurs.</p><p>Int = The amount of times you've multi-tapped.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">IntEvent</b>
<br>
<span style="">OnHighest</span>
</h2>
<p>Called when a multi-tap occurs.</p><p>Int = The maximum amount of fingers involved in this multi-tap.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">IntIntEvent</b>
<br>
<span style="">OnCountHighest</span>
</h2>
<p>Called when a multi-tap occurs.</p><p>Int = The amount of times you've multi-tapped.</p><p>Int = The maximum amount of fingers involved in this multi-tap.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveAllFingers</span>
<br>
<b></b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove all fingers.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanMultiTwist"></a><h2>LeanMultiTwist</h2><p>This component allows you to get the twist of all fingers.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerFilter</b>
<br>
<span style="">Use</span>
</h2>
<p>The method used to find fingers to use with this component. See LeanFingerFilter documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreIfStatic</span>
</h2>
<p>If there is no twisting, ignore the events?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">OneFingerType</b>
<br>
<span style="">OneFinger</span>
</h2>
<p>Should this component allow one finger twisting?</p><p>ScreenCenter = The twist pivot point will be the center of the screen.</p><p>FingerStart = The twist pivot point will be the finger start position.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveAllFingers</span>
<br>
<b></b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove all fingers.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanMultiUp"></a><h2>LeanMultiUp</h2><p>This component allows you to detect when a specific amount of fingers stop touching the screen.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerFilter</b>
<br>
<span style="">Use</span>
</h2>
<p>The method used to find fingers to use with this component. See LeanFingerFilter documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerEvent</b>
<br>
<span style="">OnFinger</span>
</h2>
<p>This event will be called if the above conditions are met when your finger stops touching the screen.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanScreenDepth</b>
<br>
<span style="">ScreenDepth</span>
</h2>
<p>The method used to find world coordinates from a finger. See LeanScreenDepth documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorld</span>
</h2>
<p>This event will be called if the above conditions are met when your finger stops touching the screen.</p><p>Vector3 = Finger position in world space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector2Event</b>
<br>
<span style="">OnScreen</span>
</h2>
<p>This event will be called if the above conditions are met when your finger stops touching the screen.</p><p>Vector2 = Finger position in screen space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveAllFingers</span>
<br>
<b></b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove all fingers.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanMultiUpdate"></a><h2>LeanMultiUpdate</h2><p>This component allows you to get the change in position of all specified fingers.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerFilter</b>
<br>
<span style="">Use</span>
</h2>
<p>The method used to find fingers to use with this component. See LeanFingerFilter documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreIfStatic</span>
</h2>
<p>If the fingers didn't move, skip calling</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerListEvent</b>
<br>
<span style="">OnFingers</span>
</h2>
<p>This event is invoked when the requirements are met.</p><p>List<LeanFinger> = The fingers that are touching the screen.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">CoordinateType</b>
<br>
<span style="">Coordinate</span>
</h2>
<p>The coordinate space of the OnDelta values.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">Multiplier</span>
</h2>
<p>The delta values will be multiplied by this when output.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector2Event</b>
<br>
<span style="">OnDelta</span>
</h2>
<p>This event is invoked when the requirements are met.</p><p>Vector2 = Position Delta based on your Delta setting.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">FloatEvent</b>
<br>
<span style="">OnDistance</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>Float = The distance/magnitude/length of the swipe delta vector.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanScreenDepth</b>
<br>
<span style="">ScreenDepth</span>
</h2>
<p>The method used to find world coordinates from a finger. See LeanScreenDepth documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorldFrom</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>Vector3 = Start point in world space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorldTo</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>Vector3 = End point in world space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorldDelta</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>Vector3 = The vector between the start and end points in world space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Vector3Event</b>
<br>
<span style="">OnWorldFromTo</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>Vector3 = Start point in world space.</p><p>Vector3 = End point in world space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveAllFingers</span>
<br>
<b></b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove all fingers.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanMultiUpdateCanvas"></a><h2>LeanMultiUpdateCanvas</h2><p>This component allows you to perform events while fingers are on top of the current UI element.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerFilter</b>
<br>
<span style="">Use</span>
</h2>
<p>The method used to find fingers to use with this component. See LeanFingerFilter documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreIfOff</span>
</h2>
<p>If a finger is currently off the current UI element, ignore it?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerListEvent</b>
<br>
<span style="">OnFingers</span>
</h2>
<p>This event is invoked when the requirements are met.</p><p>List<LeanFinger> = The fingers that are touching the screen.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanScreenDepth</b>
<br>
<span style="">ScreenDepth</span>
</h2>
<p>The method used to find world coordinates from a finger. See LeanScreenDepth documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorld</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>Vector3 = Start point based on the ScreenDepth settings.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveAllFingers</span>
<br>
<b></b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove all fingers.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanPick"></a><h2>LeanPick</h2><p>This component can be used to pick objects in your scene that have the <b>LeanPickable</b> component attached.</p><div class="tip"><strong>NOTE</strong>&emsp; This component requires you to call the <b>SelectScreenPosition</b> method externally (e.g. using the LeanFingerTap component).</div><div style="padding-left:75px;"><br>
<h2>
<b style="">string</b>
<br>
<span style="">RequiredTag</span>
</h2>
<p>The tag required for an object to be selected.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanPickableEvent</b>
<br>
<span style="">OnPickable</span>
</h2>
<p>This event will be invoked when an object is picked.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">PickStartScreenPosition</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>This method allows you to pick at the finger's <b>StartScreenPosition</b>.</p><div class="tip"><strong>NOTE</strong>&emsp; This method be called from somewhere for this component to work (e.g. LeanFingerTap).</div>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">PickScreenPosition</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>This method allows you to pick at the finger's current <b>ScreenPosition</b>.</p><div class="tip"><strong>NOTE</strong>&emsp; This method be called from somewhere for this component to work (e.g. LeanFingerTap).</div>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">SelectScreenPosition</span>
<br>
<b>LeanFinger finger, Vector2 screenPosition</b>
</h2>
<p>This method allows you to initiate selection of a finger at a custom screen position.</p><div class="tip"><strong>NOTE</strong>&emsp; This method be called from a custom script for this component to work.</div>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanPickable"></a><h2>LeanPickable</h2><p>This component allows you to detect when a finger presses/taps on top of the current GameObject without using the LeanSelectable system.</p><div class="tip"><strong>NOTE</strong>&emsp; This feature requires your scene to contain the <b>LeanPick</b> component.</div><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerEvent</b>
<br>
<span style="">OnFinger</span>
</h2>
<p>This event will be invoked when the specified finger touches this GameObject.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanScreenDepth</b>
<br>
<span style="">ScreenDepth</span>
</h2>
<p>The method used to find world coordinates from a finger. See LeanScreenDepth documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnWorld</span>
</h2>
<p>This event will be invoked when this object is picked, and tell you the world space position it touched.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector2Event</b>
<br>
<span style="">OnScreen</span>
</h2>
<p>This event will be invoked when this object is picked, and tell you the screen space position it touched.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanPinchCamera"></a><h2>LeanPinchCamera</h2><p>This component allows you to zoom a camera in and out based on the pinch gesture</p><p>This supports both perspective and orthographic cameras</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerFilter</b>
<br>
<span style="">Use</span>
</h2>
<p>The method used to find fingers to use with this component. See LeanFingerFilter documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Camera</b>
<br>
<span style="">Camera</span>
</h2>
<p>The camera this component will calculate using.</p><p>None = MainCamera.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">Zoom</span>
</h2>
<p>The current FOV/Size.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">Damping</span>
</h2>
<p>If you want this component to change smoothly over time, then this allows you to control how quick the changes reach their target value.</p><p>-1 = Instantly change.</p><p>1 = Slowly change.</p><p>10 = Quickly change.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">Clamp</span>
</h2>
<p>Limit the FOV/Size?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">ClampMin</span>
</h2>
<p>The minimum FOV/Size we want to zoom to.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">ClampMax</span>
</h2>
<p>The maximum FOV/Size we want to zoom to.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">Relative</span>
</h2>
<p>Should the zoom be performed relative to the finger center?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreZ</span>
</h2>
<p>Ignore changes in Z translation for 2D?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanScreenDepth</b>
<br>
<span style="">ScreenDepth</span>
</h2>
<p>The method used to find world coordinates from a finger. See LeanScreenDepth documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">MultiplyZoom</span>
<br>
<b>float scale</b>
</h2>
<p>This method allows you to multiply the current <b>Zoom</b> value by the specified scale. This is useful for quickly changing the zoom from UI button clicks, or <b>LeanMouseWheel</b> scrolling.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">IncrementZoom</span>
<br>
<b>float delta</b>
</h2>
<p>This method allows you to multiply the current <b>Zoom</b> value by the specified delta. This works like <b>MultiplyZoom</b>, except a value of 0 will result in no change, -1 will halve the zoom, 2 will double the zoom, etc.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveAllFingers</span>
<br>
<b></b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove all fingers.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanReplayFinger"></a><h2>LeanReplayFinger</h2><p>This shows you how to record a finger's movement data that can later be replayed.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">Transform</b>
<br>
<span style="">Cursor</span>
</h2>
<p>The cursor used to show the recording.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanScreenDepth</b>
<br>
<span style="">ScreenDepth</span>
</h2>
<p>The conversion method used to find a world point from a screen point.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">Playing</span>
</h2>
<p>Is the recording playing?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">PlayTime</span>
</h2>
<p>The position of the playback in seconds.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanSelectableBlock"></a><h2>LeanSelectableBlock</h2><p>This component shows you a basic implementation of a block in a match-3 style game.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">int</b>
<br>
<span style="">X</span>
</h2>
<p>Current X grid coordinate of this block.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">int</b>
<br>
<span style="">Y</span>
</h2>
<p>Current Y grid coordinate of this block.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">BlockSize</span>
</h2>
<p>The size of the block in world space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">DeselectOnSwap</span>
</h2>
<p>Auto deselect this block when swapping?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">Damping</span>
</h2>
<p>If you want this component to change smoothly over time, then this allows you to control how quick the changes reach their target value.</p><p>-1 = Instantly change.</p><p>1 = Slowly change.</p><p>10 = Quickly change.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanSelectableCenter"></a><h2>LeanSelectableCenter</h2><p>This component can calculate the average position of all selected objects in the scene.</p><div class="tip"><strong>NOTE</strong>&emsp; You must manually call the <b>Calculate</b> method from somewhere (e.g. inspector event), then it will be output from the <b>OnPosition</b> event.</div><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3Event</b>
<br>
<span style="">OnPosition</span>
</h2>
<p>This allows you to output Seconds to UI text.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">Calculate</span>
<br>
<b></b>
</h2>
<p>This method will calculate the position and output it using the <b>OnPosition</b> event.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanSelectableCount"></a><h2>LeanSelectableCount</h2><p>This component allows you to detect when a specific amount of selectable objects in the scene have been selected.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">int</b>
<br>
<span style="">Count</span>
</h2>
<p>This object has been selected this many times.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">IntEvent</b>
<br>
<span style="">OnCount</span>
</h2>
<p>When the amount of selected objects changes, this event is invoked with the current count.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">int</b>
<br>
<span style="">MatchMin</span>
</h2>
<p>The minimum amount of objects that must be selected for a match.</p><p>-1 = Max.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">int</b>
<br>
<span style="">MatchMax</span>
</h2>
<p>The maximum amount of objects that can be selected for a match.</p><p>-1 = Max.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">UnityEvent</b>
<br>
<span style="">OnMatch</span>
</h2>
<p>When the amount of selected objects matches the <b>RequiredCount</b>, this event will be invoked.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">UnityEvent</b>
<br>
<span style="">OnUnmatch</span>
</h2>
<p>When the amount of selected objects no longer matches the <b>RequiredCount</b>, this event will be invoked.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanSelectableDial"></a><h2>LeanSelectableDial</h2><p>This script allows you to twist the selected object around like a dial or knob.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">Camera</b>
<br>
<span style="">Camera</span>
</h2>
<p>The camera this component will calculate using.</p><p>None/null = MainCamera.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3</b>
<br>
<span style="">Tilt</span>
</h2>
<p>The base rotation in local space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3</b>
<br>
<span style="">Axis</span>
</h2>
<p>The axis of the rotation in local space.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">Angle</span>
</h2>
<p>The angle of the dial in degrees.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">Clamp</span>
</h2>
<p>Should the Angle value be clamped?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">ClampMin</span>
</h2>
<p>The minimum Angle value.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">ClampMax</span>
</h2>
<p>The maximum Angle value.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">List&lt;Trigger&gt;</b>
<br>
<span style="">Triggers</span>
</h2>
<p>This allows you to perform a custom event when the dial is within a specified angle range.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">FloatEvent</b>
<br>
<span style="">OnAngleChanged</span>
</h2>
<p>This event is invoked when the <b>Angle</b> changes.</p><p>Float = Current Angle.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">IncrementAngle</span>
<br>
<b>float delta</b>
</h2>
<p>This method allows you to increase the <b>Angle</b> value from an external event (e.g. UI button click).</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanSelectableDragTorque"></a><h2>LeanSelectableDragTorque</h2><p>This script will add torque to the attached Rigidbody based on finger spin gestures.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">Camera</b>
<br>
<span style="">Camera</span>
</h2>
<p>The camera this component will calculate using.</p><p>None/null = MainCamera.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">Force</span>
</h2>
<p>The torque force multiplier.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanSelectableDrop"></a><h2>LeanSelectableDrop</h2><p>This script allows you to change the color of the SpriteRenderer attached to the current GameObject.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LayerMask</b>
<br>
<span style="">Layers</span>
</h2>
<p>This stores the layers we want the raycast/overlap to hit.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">string</b>
<br>
<span style="">RequiredTag</span>
</h2>
<p>The GameObject you drop this on must have this tag.</p><p>Empty = No tag required.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">SearchType</b>
<br>
<span style="">Search</span>
</h2>
<p>How should the IDropHandler be searched for on the dropped GameObject?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Camera</b>
<br>
<span style="">Camera</span>
</h2>
<p>The camera this component will calculate using.</p><p>None/null = MainCamera.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">GameObjectEvent</b>
<br>
<span style="">OnGameObject</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>GameObject = The GameObject instance this was dropped on.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">IDropHandlerEvent</b>
<br>
<span style="">OnDropHandler</span>
</h2>
<p>Called on the first frame the conditions are met.</p><p>IDropHandler = The IDropHandler instance this was dropped on.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanSelectablePressureScale"></a><h2>LeanSelectablePressureScale</h2><p>This component scales the current selectable based on the selecting finger pressure.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3</b>
<br>
<span style="">BaseScale</span>
</h2>
<p>The default scale with no pressure.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">PressureMultiplier</span>
</h2>
<p>The amount BaseScale gets multiplied based on the finger pressure.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">PressureClamp</span>
</h2>
<p>Limit pressure to a range of 0..1?</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanSelectableSelected"></a><h2>LeanSelectableSelected</h2><p>This component fires events when the selectable has been selected for a certain amount of time.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">Threshold</span>
</h2>
<p>The finger must be held for this many seconds.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">ResetType</b>
<br>
<span style="">Reset</span>
</h2>
<p>When should Seconds be reset to 0?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">RawSelection</span>
</h2>
<p>Bypass LeanSelectable.HideWithFinger?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">RequireFinger</span>
</h2>
<p>If the selecting finger went up, cancel timer?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">SelectableEvent</b>
<br>
<span style="">OnSelectableDown</span>
</h2>
<p>Called on the first frame the conditions are met.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">SelectableEvent</b>
<br>
<span style="">OnSelectableUpdate</span>
</h2>
<p>Called on every frame the conditions are met.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">SelectableEvent</b>
<br>
<span style="">OnSelectableUp</span>
</h2>
<p>Called on the last frame the conditions are met.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanSelectableTime"></a><h2>LeanSelectableTime</h2><p>This component counts how many seconds this <b>LeanSelectable</b> has been selected and sends it out via event.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">SendType</b>
<br>
<span style="">Send</span>
</h2>
<p>This allows you to control when the events will be invoked.</p><p>WhileSelected = Every frame while this object is selected.</p><p>WhileSelectedAndWhenDeselected = Every frame while this object is selected, and the first frame it gets deselected.</p><p>Always = Every frame, regardless of the selection.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">FloatEvent</b>
<br>
<span style="">OnSeconds</span>
</h2>
<p>Based on the <b>Send</b> setting, this event will be invoked.</p><p>Float = Seconds selected.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanSelectionBox"></a><h2>LeanSelectionBox</h2><p>This component will draw a selection box.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">Camera</b>
<br>
<span style="">Camera</span>
</h2>
<p>The camera this component will calculate using.</p><p>None/null = MainCamera.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">IgnoreIfStartedOverGui</span>
</h2>
<p>Ignore fingers with StartedOverGui?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">RectTransform</b>
<br>
<span style="">Prefab</span>
</h2>
<p>The selection box prefab.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">RectTransform</b>
<br>
<span style="">Root</span>
</h2>
<p>The transform the prefabs will be spawned on.</p><div class="tip"><strong>NOTE</strong>&emsp; This RectTransform must fill the whole screen, like the main canvas.</div>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanSelectByFinger</b>
<br>
<span style="">Select</span>
</h2>
<p>The selected objects will be selected by this component.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanShape"></a><h2>LeanShape</h2><p>This component allows you to define a shape using 2D points.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">ConnectEnds</span>
</h2>
<p>Should the start and end points of this shape be connected, forming a loop?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LineRenderer</b>
<br>
<span style="">Visual</span>
</h2>
<p>If you want to visualize the shape, you can specify an output LineRenderer here.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">List&lt;Vector2&gt;</b>
<br>
<span style="">Points</span>
</h2>
<p>The points that define the shape.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanShapeDetector"></a><h2>LeanShapeDetector</h2><p>This component allows you to detect</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerFilter</b>
<br>
<span style="">Use</span>
</h2>
<p>The method used to find fingers to use with this component. See LeanFingerFilter documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanShape</b>
<br>
<span style="">Shape</span>
</h2>
<p>The shape we want to detect.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">StepThreshold</span>
</h2>
<p>The finger must move at least this many scaled pixels for it to record a new point.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">DistanceThreshold</span>
</h2>
<p>The drawn shape must be within this distance of the reference shape to be recognized. This is in local space relative to the reference shape.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">ErrorThreshold</span>
</h2>
<p>If you draw outside the DistanceThreshold, the error factor will increase based on how far you stray, until eventually the shape fails to detect. This allows you to set how high the error factor can become before the detection fails.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">int</b>
<br>
<span style="">MinimumPoints</span>
</h2>
<p>If you want to allow partial shape matches, then specify the minimum amount of edges that must be matched in the shape.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">DirectionType</b>
<br>
<span style="">Direction</span>
</h2>
<p>Which direction should the shape be checked using?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerEvent</b>
<br>
<span style="">OnDetected</span>
</h2>
<p>If the finger goes up and it has traced the specified shape, this event will be invoked with the finger data.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveAllFingers</span>
<br>
<b></b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove all fingers.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanSpawnWithFinger"></a><h2>LeanSpawnWithFinger</h2><p>This component allows you to spawn a prefab at a point relative to a finger and the specified ScreenDepth.</p><div class="tip"><strong>NOTE</strong>&emsp; To trigger the prefab spawn you must call the Spawn method on this component from somewhere.</div><div style="padding-left:75px;"><br>
<h2>
<b style="">Transform</b>
<br>
<span style="">Prefab</span>
</h2>
<p>The prefab that this component can spawn.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">RotateType</b>
<br>
<span style="">RotateTo</span>
</h2>
<p>How should the spawned prefab be rotated?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">DragAfterSpawn</span>
</h2>
<p>Hold on to the spawned clone while the spawning finger is still being held?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">SelectOnSpawn</span>
</h2>
<p>If the specified prefab is selectable, select it when spawned?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanSelect</b>
<br>
<span style="">SelectWith</span>
</h2>
<p>If you want the spawned component to be a selected with a specific select component, you can specify it here.</p><p>None/null = It will be self selected.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanScreenDepth</b>
<br>
<span style="">ScreenDepth</span>
</h2>
<p>The conversion method used to find a world point from a screen point.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector2</b>
<br>
<span style="">PixelOffset</span>
</h2>
<p>This allows you to offset the finger position.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Canvas</b>
<br>
<span style="">PixelScale</span>
</h2>
<p>If you want the pixels to scale based on device resolution, then specify the canvas whose scale you want to use here.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Vector3</b>
<br>
<span style="">WorldOffset</span>
</h2>
<p>This allows you to offset the spawned object position.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">Transform</b>
<br>
<span style="">WorldRelativeTo</span>
</h2>
<p>This allows you transform the WorldOffset to be relative to the specified Transform.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">Spawn</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>This will spawn Prefab at the specified finger based on the ScreenDepth setting.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanSwipeEdge"></a><h2>LeanSwipeEdge</h2><p>This component allows you to detect when a finger swipes from the edge of the screen.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerFilter</b>
<br>
<span style="">Use</span>
</h2>
<p>The method used to find fingers to use with this component. See LeanFingerFilter documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">Left</span>
</h2>
<p>Detect swipes coming from the left edge?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">Right</span>
</h2>
<p>Detect swipes coming from the right edge?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">Bottom</span>
</h2>
<p>Detect swipes coming from the bottom edge?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">Top</span>
</h2>
<p>Detect swipes coming from the top edge?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">AngleThreshold</span>
</h2>
<p>If the swipe angle is off by this many degrees, it will be ignored.</p><p>0 = Must be exactly parallel.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">EdgeThreshold</span>
</h2>
<p>The swipe must begin within this many scaled pixels of the edge of the screen.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">CheckBetween</span>
<br>
<b>Vector2 from, Vector2 to</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually check for a swipe.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveAllFingers</span>
<br>
<b></b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove all fingers.</p>
</div><br><br><br></div><div style="overflow:hidden;"><a name="LeanTwistCamera"></a><h2>LeanTwistCamera</h2><p>This component allows you to rotate the current GameObject using a twist gesture.</p><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanFingerFilter</b>
<br>
<span style="">Use</span>
</h2>
<p>The method used to find fingers to use with this component. See LeanFingerFilter documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">float</b>
<br>
<span style="">Damping</span>
</h2>
<p>If you want this component to change smoothly over time, then this allows you to control how quick the changes reach their target value.</p><p>-1 = Instantly change.</p><p>1 = Slowly change.</p><p>10 = Quickly change.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">bool</b>
<br>
<span style="">Relative</span>
</h2>
<p>Should the rotation be performed relative to the finger center?</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">LeanScreenDepth</b>
<br>
<span style="">ScreenDepth</span>
</h2>
<p>The method used to find world coordinates from a finger. See LeanScreenDepth documentation for more information.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">AddFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually add a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveFinger</span>
<br>
<b>LeanFinger finger</b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove a finger.</p>
</div><br><div style="padding-left:75px;"><br>
<h2>
<b style="">void</b>
<br>
<span style="">RemoveAllFingers</span>
<br>
<b></b>
</h2>
<p>If you've set Use to ManuallyAddedFingers, then you can call this method to manually remove all fingers.</p>
</div><br><br><br></div>
</div>
<div style="position: absolute; width: 310px; left: 0px; right: 0px; top: 20px; bottom: 20px; overflow-y: scroll; padding: 20px;">
<h2 style="padding-bottom: 5px;">Index</h2>
<p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#WhatIs">What is Lean Touch+?</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#GettingStarted">How do I get started?</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#Examples">What Examples Are Included?</a></p>
<br><br>
<h2 style="padding-bottom: 5px;">Assets</h2>
<p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanGUI">Lean GUI</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanTransition">Lean Transition</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#PaintIn3D">Paint in 3D</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanPool">Lean Pool</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#SpaceGraphicsToolkit">Space Graphics Toolkit</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanTouch">Lean Touch</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanLocalization">Lean Localization</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanGUIShapes">Lean GUI Shapes</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#Destructible2D">Destructible 2D</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#PlanetPack">Planet Pack - Space Graphics Toolkit</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanTouchPlus">Lean Touch+</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#VolumetricAudio">Volumetric Audio</a></p>
<br><br>
<h2 style="padding-bottom: 5px;">Versions</h2>
<p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.3.0">2.3.0</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.2.4">2.2.4</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.2.3">2.2.3</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.2.2">2.2.2</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.2.1">2.2.1</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.2.0">2.2.0</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.1.9">2.1.9</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.1.8">2.1.8</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.1.7">2.1.7</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.1.6">2.1.6</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.1.5">2.1.5</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.1.4">2.1.4</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.1.3">2.1.3</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.1.2">2.1.2</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.1.1">2.1.1</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.1.0">2.1.0</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.0.9">2.0.9</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.0.8">2.0.8</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.0.7">2.0.7</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.0.6">2.0.6</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.0.5">2.0.5</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.0.4">2.0.4</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.0.3">2.0.3</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.0.2">2.0.2</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.0.1">2.0.1</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#2.0.0">2.0.0</a></p>
<br><br>
<h2 style="padding-bottom: 5px;">Components</h2>
<p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#IDropHandler">IDropHandler</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanDragColorMesh">LeanDragColorMesh</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanDragDeformMesh">LeanDragDeformMesh</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanDragLine">LeanDragLine</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanDragSelect">LeanDragSelect</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanDragTranslateAlong">LeanDragTranslateAlong</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanDragTranslateRigidbody">LeanDragTranslateRigidbody</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanDragTranslateRigidbody2D">LeanDragTranslateRigidbody2D</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanDrop">LeanDrop</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanDropCount">LeanDropCount</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanFingerDownCanvas">LeanFingerDownCanvas</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanFingerFlick">LeanFingerFlick</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanFingerHeld">LeanFingerHeld</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanFingerTapExpired">LeanFingerTapExpired</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanFingerTapQuick">LeanFingerTapQuick</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanFirstDown">LeanFirstDown</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanFirstDownCanvas">LeanFirstDownCanvas</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanGestureToggle">LeanGestureToggle</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanLastUp">LeanLastUp</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanLastUpCanvas">LeanLastUpCanvas</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanManualFlick">LeanManualFlick</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanManualSwipe">LeanManualSwipe</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanMouseWheel">LeanMouseWheel</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanMultiDirection">LeanMultiDirection</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanMultiDown">LeanMultiDown</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanMultiHeld">LeanMultiHeld</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanMultiPinch">LeanMultiPinch</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanMultiPull">LeanMultiPull</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanMultiSwipe">LeanMultiSwipe</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanMultiTap">LeanMultiTap</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanMultiTwist">LeanMultiTwist</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanMultiUp">LeanMultiUp</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanMultiUpdate">LeanMultiUpdate</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanMultiUpdateCanvas">LeanMultiUpdateCanvas</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanPick">LeanPick</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanPickable">LeanPickable</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanPinchCamera">LeanPinchCamera</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanReplayFinger">LeanReplayFinger</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanSelectableBlock">LeanSelectableBlock</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanSelectableCenter">LeanSelectableCenter</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanSelectableCount">LeanSelectableCount</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanSelectableDial">LeanSelectableDial</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanSelectableDragTorque">LeanSelectableDragTorque</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanSelectableDrop">LeanSelectableDrop</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanSelectablePressureScale">LeanSelectablePressureScale</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanSelectableSelected">LeanSelectableSelected</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanSelectableTime">LeanSelectableTime</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanSelectionBox">LeanSelectionBox</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanShape">LeanShape</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanShapeDetector">LeanShapeDetector</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanSpawnWithFinger">LeanSpawnWithFinger</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanSwipeEdge">LeanSwipeEdge</a></p><p style="margin: 2px; padding-left: 10px; text-indent: -10px;"><a href="#LeanTwistCamera">LeanTwistCamera</a></p>
<br><br>
</div>
<div style="background-color: #0075D0; position: absolute; left: 0px; right: 0px; bottom: 0px; height: 20px;">
</div>
</body>
</html>