ReadMe - 2.6.1e.txt 48 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760
  1. ----------------------------------------------
  2. NGUI: Next-Gen UI kit
  3. Copyright © 2011-2012 Tasharen Entertainment
  4. Version 2.6.1e
  5. http://www.tasharen.com/?page_id=197
  6. support@tasharen.com
  7. ----------------------------------------------
  8. Thank you for buying NGUI!
  9. If you have any questions, suggestions, comments or feature requests, please
  10. drop by the NGUI forum, found here: http://www.tasharen.com/forum/index.php?board=1.0
  11. --------------------
  12. How To Update NGUI
  13. --------------------
  14. If you have the Professional Edition of NGUI that comes with Git access, just pull the latest changes.
  15. If you have a Standard Edition:
  16. 1. In Unity, File -> New Scene
  17. 2. Delete the NGUI folder from the Project View.
  18. 3. Import NGUI from the updated Unity Package.
  19. ---------------------------------------
  20. Support, documentation, and tutorials
  21. ---------------------------------------
  22. All can be found here: http://www.tasharen.com/?page_id=197
  23. Using NGUI with JavaScript (UnityScript)? Read this first: http://www.tasharen.com/forum/index.php?topic=6
  24. -----------------
  25. Version History
  26. -----------------
  27. 2.6.1:
  28. - FIX: Dynamic font-related fixes.
  29. - FIX: Depth pass will now be force-disabled when the panel is clipped.
  30. - FIX: Sticky press option on the UICamera no longer breaks OnDrop events.
  31. - FIX: UIInput's useLabelTextAtStart should now work again.
  32. - FIX: UICamera.touchCount should now be accurate.
  33. - FIX: Fixed a typo in the image button inspector.
  34. - FIX: UIWidget.UpdateGeometry will now check for object's disabled state prior to filling the geometry.
  35. 2.6.0
  36. - NEW: Added dynamic font support for Unity 4.0.
  37. - NEW: Handles can now be toggled on/off from the NGUI menu.
  38. - NEW: Atlas maker will now be limited by max texture size, and will no longer make it possible to corrupt an atlas.
  39. - NEW: Warning will be shown on the panel if clipping is not possible (GLES 1.1).
  40. - NEW: Checkbox can now have fade in the checkmark instantly.
  41. - NEW: You can now leave C++ style comments (//) in the localization files.
  42. - NEW: You can now paste into input fields in stand-alone builds.
  43. - NEW: Added disabled state to UIImageButton (Nicki)
  44. - FIX: UISlider will now use the sprite size rather than collider size to determine the touch effect area.
  45. - FIX: Resetting the tween will now mark it as not started.
  46. - FIX: Blank labels will no longer be localized.
  47. - FIX: Resetting the sprite animation will also reset the sprite back to 0.
  48. 2.5.1
  49. - NEW: Added a "shrink to fit" option for labels that will scale down the text if it doesn't fit.
  50. - FIX: Re-added the "import font" field in the font inspector.
  51. 2.5.0
  52. - DEL: Deprecated Unity 3.5.4 and earlier support. If you are using 3.5.4 or earlier, DO NOT UPDATE!
  53. - OLD: Sliced, tiled, and filled sprites have been deprecated.
  54. - NEW: Regular sprite now has options for how the sprite is drawn.
  55. - NEW: NGUI widgets now have visual placement handles.
  56. - NEW: Adding a widget now automatically creates a UI hierarchy if one is not present.
  57. - NEW: NGUI menu has been redesigned with new options and shortcut keys.
  58. - FIX: Widget selection box now takes padding into account properly.
  59. - FIX: Changing the pivot no longer moves the widget visually.
  60. - FIX: Font symbols now use padding instead of inner rect for offset.
  61. - FIX: Font symbols no longer need to be used in the editor before they are usable in-game.
  62. - FIX: More fixes to how tweens get initialized/started.
  63. - FIX: Re-added UISlider.fullSize property for better backwards compatibility.
  64. - FIX: Unity 4.1-related fixes.
  65. - FIX: Variety of other minor tweaks and changes.
  66. 2.3.6
  67. - NEW: Added a much easier way to add symbols and emoticons (select the font, you will see it).
  68. - NEW: Added a couple of conditional warnings to the UIPanel warning of common mistakes.
  69. - NEW: Various improvements to widget and sprite inspectors.
  70. - FIX: There is no need to display the "symbols" option on the labels if the font doesn't have any.
  71. - FIX: Removed the hard-coded screen height-based touch threshold on the UICamera.
  72. - FIX: Removed the need for sliders to have a "full size" property.
  73. 2.3.5:
  74. - NEW: Font symbols can now have an offset for easier positioning.
  75. - FIX: UISlider will now set the 'current' property before calling the delegate.
  76. - FIX: Fixed the checkbox animation issue that was brought to light as a result of 2.3.4.
  77. - FIX: Minor other tweaks, nothing important.
  78. 2.3.4:
  79. - NEW: Added the ability to easily copy/paste widget colors in the inspector.
  80. - FIX: Random fixes for minor issues noted on the forums.
  81. - FIX: Minor performance improvements.
  82. 2.3.3
  83. - NEW: UIPanels now have alpha for easy fading, and TweenAlpha can now tween panels.
  84. - NEW: Added UICamera.debug mode for when you want to know what the mouse is hovering over.
  85. - NEW: Added AnimatedColor and AnimatedAlpha scripts in case you want to animate widget color or alpha via Unity's animations.
  86. - NEW: Android devices should now be able to support a keyboard and a controller (OUYA).
  87. - NEW: Added UIFont.pixelSize, making it possible to have HD/UD fonts that are not a part of an atlas.
  88. - FIX: Unity 4.1 optimization fix.
  89. - FIX: Label shadow should now be affected by alpha using PMA shaders.
  90. - FIX: UICheckbox.current will now work correctly for checkbox event receivers.
  91. - FIX: UIButton series of scripts should now initialize themselves on start, not when they are used.
  92. - FIX: TweenOrthoSize should now tween the size instead of FOV (o_O).
  93. - FIX: Sprite selection window will now show sprites properly when the atlas is not square.
  94. - FIX: UIAnchor should now always maintain the same Z-depth, and once again works in 3D UIs.
  95. 2.3.1
  96. - NEW: Added UICamera.touchCount.
  97. - NEW: Added an option on the UIInput to turn on auto-correction on mobiles.
  98. - FIX: Fixed compilation on Unity 3.
  99. - FIX: Font inspector will now display the font in a preview window.
  100. 2.3.0:
  101. - NEW: Added Premultiplied Alpha support to NGUI along with the appropriate shaders.
  102. - NEW: Added UIButtonKeyBinding script that makes it easy to do button key bindings.
  103. - NEW: Transform inspector now supports multi-object editing (contribution by Bardelot 'Cripple' Alexandre)
  104. - NEW: UIRoot's 'automatic' flag is now gone, replaced by a more intuitive drop-down list.
  105. - NEW: It's now possible to make UIRoot fixed size on mobiles, but pixel-perfect on desktops (it's an option).
  106. - NEW: You can now specify an animation curve on all tweens.
  107. - NEW: Localization will now attempt to load the starting language automatically.
  108. - NEW: Added UICamera.onCustomInput callback making it possible to add input form custom devices.
  109. - NEW: Support for optimizations in Unity 4.1.
  110. - FIX: Tweaks to Localization to make it easier to use. You can now just do Localization.Localize everywhere.
  111. - FIX: UILocalize attached to a label used by input will now localize its default value instead.
  112. - FIX: Kerning should now get saved properly. You will need to re-import your fonts.
  113. - FIX: UICamera with multi-touch turned off should now work properly when returning from sleep.
  114. - FIX: ActiveAnimation's onFinished callback will no longer wait for all animation states to finish (only the playing one).
  115. - FIX: UICamera's touch detection should now work properly when returning from sleep.
  116. - FIX: Changed the way MakePixelPerfect works a bit, hopefully fixing an issue with sprites moving by a pixel.
  117. - FIX: UIPanel should now display the clipped rectangle correctly.
  118. - FIX: UIInputSaved will now save on submit.
  119. - DEL: Removed UIAnchor.depthOffset seeing as it caused more confusion than anything else. Just use an offset child GameObject.
  120. - DEL: Deprecated hard clipping, seeing as it causes issues on too many devices.
  121. 2.2.7:
  122. - NEW: Added UICamera.stickyPress option that makes it possible for multiple objects to receive OnPress notifications from a single touch.
  123. - NEW: UICamera.hoveredObject now works for touch events as well, and will always hold the result of the last Raycast.
  124. - NEW: Added "Edit" buttons to all atlase and font fields, making easy to select the atlas/font for modification.
  125. - NEW: Added Localization.Localize. Was going to change Localization.Get to be static, but didn't want to break backwards compatibility.
  126. - FIX: Inventory example should work correctly in Unity 4.0.
  127. - FIX: You can now set UILabel.text to null.
  128. - FIX: UIPanel was not drawing its rect correctly in some cases.
  129. - FIX: Assortment of tweaks and fixes submitted by Andrew Osborne (community contribution).
  130. - FIX: Switching a mainTexture of a UITexture belonging to a clipped panel will now work properly.
  131. 2.2.6:
  132. - NEW: Mouse and touch events now have an option to be clipped by the panel's clipping rect, just like widgets.
  133. - NEW: Made it possible to delete several sprites at once (Atlas Maker).
  134. - FIX: Added proper support for Unity 4-based nested active state while maintaining backwards compatibility.
  135. 2.2.5:
  136. - NEW: Double-clicking a sprite in the sprite selection window will now close the window.
  137. - FIX: UIRoot will now only consider min/max clamping in automatic mode.
  138. - FIX: Password fields should now get wrapped properly.
  139. - FIX: MakePixelPerfect() will now preserve negatives.
  140. - FIX: UISlider will no longer jump to 0 when clicked with the controller.
  141. 2.2.4:
  142. - NEW: SpringPanel and UICenterOnChild now have an OnFinished callback.
  143. - NEW: UIForwardEvents now has OnScroll.
  144. - FIX: UISavedOption now unregisters the state change delegate when disabled.
  145. - FIX: IgnoreTimeScale clamps time delta at 1 sec maximum, fixing a long pause after returning from sleep.
  146. - FIX: UIWidget now correctly cleans up UITextures that have been re-parented.
  147. - FIX: Tween scripts now sample the tween immediately if the duration is 0.
  148. - FIX: UIFont and UIAtlas MarkAsDirty() function now works correctly with a reference atlas (in the editor).
  149. 2.2.3:
  150. - FIX: Small fix for UIAnchor using a clipped panel container (thanks yuewah!)
  151. - FIX: Work-around/fix-ish thing for Unity Remote sending both mouse and touch events.
  152. - FIX: hideInactive on UIGrid should now function correctly.
  153. 2.2.2:
  154. - NEW: You can now specify a minimum and maximum height on UIRoot.
  155. - NEW: Label shadow and outline distance can now be modified.
  156. - NEW: Added UIButtonActivate -- an extremely simple script that can be used to activate or deactivate something on click.
  157. - NEW: Creating a new UI will now automatically add a kinematic rigidbody to the UIRoot, as it's supposedly faster for physics checks.
  158. - NEW: Game objects destroyed via NGUITools.Destroy will now automatically get un-parented.
  159. - NEW: UIEventListener now has an OnKey delegate.
  160. - FIX: Sprite preview should now display wide sprites correctly.
  161. - FIX: Fixed copy/paste error in the atlas inspector (thanks athos!).
  162. - FIX: UIGrid will no longer consider destroyed game objects.
  163. - FIX: Couple of other smaller fixes.
  164. 2.2.1:
  165. - FIX: Sprite list should now be faster.
  166. - FIX: Sprite border editing should now work properly again.
  167. - FIX: A couple of other minor fixes.
  168. 2.2.0:
  169. - NEW: Added a sprite selection window that replaces the drop-down selection list. Think texture selection window for your sprites. The sprite selection window has a search box to narrow down your selection.
  170. - NEW: Sprite preview is now shown in the Preview window, and is affected by the widget's color tint.
  171. - NEW: Added warning messages when more than one widget is using the same depth value, and when more than one atlas is used by the panel.
  172. - NEW: It's now possible to edit a sprite quickly by choosing the "edit" option.
  173. - NEW: When editing a sprite in the atlas, a "Return to ..." button is shown if you've navigated here from a sprite.
  174. - FIX: UIAnchor and UIStretch now work with labels properly.
  175. - FIX: UITexture will no longer occasionally lose the reference to its texture.
  176. - FIX: NGUITools.EncodeColor now works in Flash (created a work-around).
  177. 2.1.6:
  178. - NEW: UISavedOption now works on a popup list as well.
  179. - FIX: Replaced ifdefs for Unity 4 with a new helper functions for cleaner code (NGUITools.GetActive and NGUITools.SetActiveSelf).
  180. - FIX: UITable was not properly keeping the contents within the draggable panel.
  181. - FIX: UIDraggablePanel.UpdateScrollbars was not considering soft clipping properly, resulting in some jitterness.
  182. - FIX: SpringPanel was not setting position / clipping when it finished, resulting in floating-point drifting errors.
  183. - FIX: UIInput's "not selected" text can now be localized using UILocalize.
  184. 2.1.5:
  185. - NEW: Added support for Unity 4.
  186. - NEW: NGUI now uses Unity 3.5.5's newly-added Color32 for colors instead of Color, reducing the memory bandwidth a bit.
  187. - NEW: UIStretch can now stretch to another widget's bounds, not just the screen.
  188. - FIX: UIImageButton will no longer add a box collider if a non-box collider is present.
  189. - FIX: NGUITools.ParseSymbol will now check to see if the symbol is valid.
  190. - FIX: UITexture-related tweaks to UIWidget.
  191. - FIX: UIAnchor can now anchor to labels.
  192. - FIX: UISlicedSprite no longer uses padding.
  193. 2.1.4:
  194. - NEW: UIInput now supports multi-line input if its label is multi-line. Hold Ctrl when hitting Enter.
  195. - FIX: UICheckboxControlledComponent will now use delegates by default.
  196. - FIX: UITexture should now work properly again.
  197. 2.1.3:
  198. - NEW: Seeing as it was an often-asked question, the Scroll View example now features a toggle that makes the scrolled list center on items.
  199. - NEW: UIAnchor can now anchor to sides of other widgets and panels.
  200. - NEW: UICamera now has "drag threshold" properties. Drag events will only be sent after this threshold has been exceeded.
  201. - NEW: You no longer have to create a material for the UITexture.
  202. - NEW: You can now specify a UV rect for the UITexture if you only wish to display a part of it.
  203. - NEW: All event senders, tweens and animation components now have a delegate callback you can use instead of the SendMessage-based event receiver.
  204. - NEW: Added UICamera.current and UIPopupList.current.
  205. - NEW: SpringPosition now has "on finished" event notifications (both event receiver and delegate).
  206. - NEW: Added a new script that can be used to change the alpha of an entire panel worth of widgets at once: UIPanelAlpha.
  207. - FIX: Replaced most usages of List with BetterList instead in order to significantly reduce memory allocation.
  208. - FIX: Custom texture packer now respects padding correctly.
  209. 2.1.2:
  210. - NEW: Selected widgets now show their panel's bounding rect, which is the screen's rect if the panel isn't clipped.
  211. - FIX: Tweens that have not been added dynamically will start playing correctly.
  212. - FIX: Texture packer should now have better packing logic.
  213. 2.1.1:
  214. - NEW: New texture packer, alternative to using Unity's built-in one. Default is still Unity for backwards compatibilty.
  215. - NEW: Added a different line wrapping functionality for input fields contributed by MightyM.
  216. - NEW: UILocalize now has a "Localize" function you can trigger to make it force-localize whatever it's on.
  217. - NEW: UITweener now has an option to not ignore timeScale.
  218. - FIX: Fixed a "drifting panel" issue introduced in the last update.
  219. - FIX: Added a warning for slider thumb used with radially filled sliders (not supported).
  220. - FIX: ActiveAnimation will now clear its event receiver and callback on Play.
  221. - FIX: UISpriteAnimation.isDone is now UISpriteAnimation.isPlaying, and is no longer backwards.
  222. 2.1.0:
  223. - NEW: Now maintained under Unity 3.5.3.
  224. - NEW: BetterList now has Insert and Contains functions.
  225. - NEW: UITweener now has bounce style tweening methods.
  226. - NEW: UITweener's OnUpdate function now has "isFinished" parameter that's set to 'true' if it's the last update.
  227. - NEW: TweenTransform is now capable of re-parenting the object when finished.
  228. - NEW: Added TweenVolume that can tween an audio source's volume.
  229. - NEW: UICamera now has a new property: "Generic Event Handler". If set, this object will receive a copy of all events regardless of where they go.
  230. - NEW: Widget Wizard now lets you specify an initial pivot point for sprites.
  231. - NEW: UISpriteAnimation now has an option to not loop the animation anymore, and can tell you how many frames it has.
  232. - NEW: Added TweenFOV that can be used to tween camera's field of view.
  233. - NEW: Added a UISoundVolume script that can change the volume of the sounds used by NGUITools.PlaySound when attached to a slider.
  234. - FIX: UIInput will now bring up a proper password keyboard on touch-based devices.
  235. - FIX: UIImageButton will now set the correct sprite when it's enabled while highlighted.
  236. - FIX: DragDropItem example script will now work on touch-based devices.
  237. - FIX: UIButtonPlayAnimation will now clear the event receiver if none was specified.
  238. - FIX: Various changes to UICamera, making it more touch-device friendly.
  239. - FIX: UIPanels marked as static will now update their geometry when new widgets get added.
  240. - FIX: Shaders no longer use "fixed" data type as it seems to have issues on certain devices.
  241. - DEL: Removed old deprecated functions in order to clean up the code.
  242. 2.0.9:
  243. - NEW: UITable can now return its list of children (in sorted order) via UITable.children.
  244. - FIX: UISpriteAnimation can now be paused with FPS of 0.
  245. - FIX: UITweener's delay should now work properly.
  246. - FIX: UIPanel should now create draw calls with "dont destroy on load" flag instead of hideflags at run time, resolving a rare warning.
  247. - FIX: Tweaks to how multi-touches are handled when they're disabled.
  248. - FIX: Removed the "#pragma fragmentoption ARB_precision_hint_fastest" which was causing issues due to no support on android, mac mini's and possibly other devices.
  249. - FIX: UIInput carat should be removed upon leaving the field on iOS.
  250. - FIX: UIInput default text should be removed OnSelect on iOS.
  251. - FIX: Inventory example should no longer have its own menu, but will instead be under NGUI.
  252. 2.0.8:
  253. - NEW: Packed fonts now have clipped version of shaders, making them work with clipped panels.
  254. - NEW: You can now specify the maximum number of lines on UILabel instead of just multiline / single line option.
  255. - NEW: UIButton's disabled color can now be specified explicitly.
  256. - NEW: Tweens and animations now have OnDoubleClick and OnSelect events to work with as well.
  257. - NEW: It's now possible to control the volume used by all UI sounds: NGUITools.soundVolume.
  258. - NEW: You can now delay a tween by specifying a start time delay.
  259. - NEW: You can now disable multi-touch on UICamera, making all touches be treated as one.
  260. - NEW: MakePixelPerfect is now in NGUITools, not NGUIMenu.
  261. - FIX: UIImageButton won't switch images anymore if the script is disabled.
  262. - FIX: Starting value in Localization will no longer overwrite the explicitly switched languages.
  263. 2.0.7:
  264. - NEW: You can now specify what keyboard type will be used on mobile devices.
  265. - NEW: You can now add input validation to your inputs to exclude certain characters (such as make your input numeric-only).
  266. - FIX: Packed fonts no longer tie up the alpha channel, and can now be affected by alpha just fine.
  267. - FIX: Clipped panels will no longer cause the unused material message in the console.
  268. - FIX: 3D UIs should now be created with a proper anchor offset.
  269. - FIX: UISliderColors will now work for more than 3 colors.
  270. - FIX: UIPanel will no longer cause a null exception at run time.
  271. 2.0.6:
  272. - NEW: Added support for fonts packed into separate RGBA channels (read: eastern language fonts can now be 75% smaller).
  273. - NEW: UITooltip is now a part of NGUI's core rather than being in examples, allowing you to use it freely.
  274. - NEW: Submit and cancel keys can now be specified on the UICamera (before they were hardcoded to Return and Escape).
  275. - FIX: Unity should no longer crash when a second widget is added to the same game object.
  276. - FIX: UIDrawCall no longer updates the index buffer unless it needs to, resulting in increased performance.
  277. - FIX: UIDrawCall now uses double-buffering, so iOS performance should increase.
  278. - FIX: You can now specify whether symbols are affected by color or not (or if they're processed for that matter).
  279. - FIX: Fixed an issue with highlighting not returning to highlighted state after press.
  280. 2.0.5:
  281. - NEW: Added support for custom-defined symbols (emoticons and such) in fonts.
  282. - NEW: Added NGUI menu -> Make Pixel Perfect (Alt+Shift+P), and NGUI Menu -> Add Collider is now Alt+Shift+C.
  283. - NEW: Added OnActivate condition to tweens and active animations.
  284. - NEW: It's now possible to have a UITable position items upwards instead of downwards.
  285. - NEW: It's now possible to have a "sticky" tooltip specified on UICamera, making it easier for tooltips to show up.
  286. - NEW: UIInput will now send out OnInputChanged notifications when typing.
  287. - NEW: Added TweenVolume script you can use to tween AudioSource's volume.
  288. - FIX: Fixed what was causing the "Cleaning up leaked objects in scene" message to show up.
  289. 2.0.4:
  290. - NEW: Added UIButton -- same as UIButtonColor, but has a disabled state.
  291. - NEW: Added the OnDoubleClick event. Same as OnClick, just sent on double-click.
  292. - FIX: UIDraggablePanel should now have noticeably better performance with many widgets.
  293. - FIX: All private serializable properties will now be hidden from the inspector.
  294. - FIX: UITooltip is now more robust and automatically uses background border size for padding.
  295. - FIX: UILabel inspector now uses a word-wrapped textbox.
  296. - FIX: UIButtonPlayAnimation and UIButtonTween now have an event receiver (on finished).
  297. - FIX: UIGrid no longer modifies Z of its items on reposition.
  298. - FIX: Only one Localization class is now allowed to be present.
  299. - FIX: UILabel should now have a bit better performance in the editor.
  300. - FIX: UISprite's MakePixelPerfect setting now takes padding into account properly.
  301. 2.0.3:
  302. - NEW: UIButtonSound now allows you to specify pitch in addition to volume.
  303. - FIX: UIDraggablePanel will now update the scroll bars on start.
  304. - FIX: UITweenScale will now start with a scale of one instead of zero by default.
  305. - FIX: UIInput will now ignore all characters lower than space, fixing an issue with mac OS input.
  306. - FIX: UITexture will no longer lose its material whenever something changes.
  307. - FIX: Reworked the way the mouse is handled in UICamera, fixing a couple of highlighting issues.
  308. 2.0.2:
  309. - FIX: UIButton series of scripts will now correctly disable and re-enable their selected state when the game object is enabled / disabled.
  310. - FIX: SpringPanel will now notify the Draggable Panel script on movement, letting it update scroll bars correctly.
  311. - FIX: UIDraggablePanel will now lose its momentum every frame rather than only when it's being dragged.
  312. - FIX: UIDraggablePanel will no longer reset the panel's position on start.
  313. - FIX: UIDraggablePanel.ResetPosition() now functions correctly.
  314. - FIX: UIDraggablePanel.UpdateScrollbars() will now only adjust the position if the scroll bars aren't being updated (ie: called from a scroll bar).
  315. - FIX: 3D UIs will now be created with a proper anchor offset.
  316. 2.0.1:
  317. - NEW: UIDraggablePanel will now display the bounds of the draggable widgets as an orange outline in the Scene View.
  318. - NEW: Added a 'repositionNow' checkbox to UIDraggablePanel that will reset the clipping area using the children widget's current bounds.
  319. - NEW: It's now possible to specify horizontal and vertical axis names for UICamera.
  320. - FIX: UICamera will no longer process WASD or Space key events if an Input Field is currently selected.
  321. - FIX: UIDraggablePanel's 'startingDragAmount' was renamed to 'startingRelativePosition', for clarity.
  322. - FIX: UICheckbox will now set the checkmark state immediately on start instead of gradually.
  323. - FIX: UISlider will now always force-set its value value on start.
  324. - FIX: UIInput.text will now always return its own text rather than that of the label (works better with captions).
  325. - FIX: Setting UIInput.text now sets the color of the label to the active color.
  326. 2.0.0:
  327. - NEW: Redesigned the way UIDragCamera and UIDragPanelContents work, making them much more straightforward.
  328. - NEW: New widget has been added: Scroll Bar. It does exactly what you think it does.
  329. - NEW: UIDraggableCamera script is used on the camera to make it draggable via UIDragCamera.
  330. - NEW: UIDraggablePanel script is used on the panel to make it draggable via UIDragPanelContents.
  331. - NEW: UIDraggablePanel natively supports scroll bars with "always show", "fade out if not needed" and "fade in only when dragging" behaviors.
  332. - NEW: Scroll View (DragPanel) and Quest Log examples have been updated with scroll bars.
  333. - NEW: Reorganized all examples to be in a more logical order -- starting with the basic, common functionality and going up from there.
  334. - NEW: Localization will now try to automatically load the language file via Resources.Load if it wasn't found in the local list.
  335. - NEW: Atlas Maker tool now allows you to turn off trimming of transparent pixels before importing certain sprites.
  336. - NEW: Atlas Maker tool now allows you to specify how much padding is applied in-between of sprites.
  337. - FIX: EditorPrefs are now used instead of PlayerPrefs to store editor-related data.
  338. - FIX: Popup list will no longer try to call SendMessage in edit mode.
  339. - FIX: UIEventListener.Add is now UIEventListener.Get, making the function make more sense with the -= operator.
  340. - DEL: Scroll View example that was using UIDragObject has been removed as it's now obsolete.
  341. 1.92:
  342. - NEW: Expanded the Filled Sprite to support radial-based filling. Great for progress indicators, cooldown timers, circular health bars, etc.
  343. - FIX: Eliminated all runtime uses of 'foreach', seeing as it causes memory leaks on iOS.
  344. 1.91:
  345. - NEW: Added a new example scene showing how to easily implement drag & drop from 2D UI to the 3D world.
  346. - FIX: UICamera was sending multiple OnDrag events for the mouse. This has now been fixed.
  347. - FIX: UIAnchor changes in 1.90 had a few adverse effects on two of the examples.
  348. 1.90:
  349. - NEW: You can now specify an option on the UIDragPanelContents that will prevent dragging if the contents already fit.
  350. - NEW: You can now specify a radio button group root on the checkbox instead of always having it be the parent object.
  351. - NEW: You can now easily adjust the widget's alpha by using the new UIWidget.alpha property.
  352. - NEW: UIAnchor script has been redesigned, and the 'stretch to fill' property has been removed. You can now position using relative coordinates.
  353. - NEW: UIStretch script has been added, allowing you to stretch an object in either (or both) directions using relative coordinates.
  354. - NEW: You can now specify a maximum range distance for UICamera's raycasts, allowing you to limit the interaction distance (for first-person cameras).
  355. - FIX: Popup list inspector now shows the "Position" drop-down.
  356. - FIX: Slider now updates correctly when it's first created, and when you change the Full Size property.
  357. - FIX: UIDragCamera now takes the camera's size into consideration.
  358. - FIX: DestroyImmediate calls have been replaced with NGUITools.DestroyImmediate as there seem to be odd issues on certain Android devices.
  359. 1.88:
  360. - NEW: Added an option to the tweener to use steeper pow(2) curves for ease in/out tweens.
  361. - NEW: You can now specify the movement threshold that will be used to determine whether button presses are eligible for clicks on UICamera.
  362. - NEW: You can now specify an input field to be password-based, and it will only hide the text once you start typing.
  363. - FIX: UIButtonTween can now disable objects properly after a toggle.
  364. - FIX: UISavedOption can now save the state of a single checkbox in addition to a group of checkboxes.
  365. - FIX: Localization now handles duplicate key entries silently.
  366. - FIX: Widgets not using a texture will now have gizmos.
  367. - FIX: Fix for the OnClick event on touch-based devices.
  368. 1.87:
  369. - NEW: UISlider now has an inspector class, and 'rawValue' can no longer be modified (use 'sliderValue'!)
  370. - FIX: An assortment of tweaks and fixes, focusing on stability and ease of use.
  371. - FIX: Reworked the way the UIPopupList was calculating its padding, making it more robust.
  372. - FIX: Disabled widgets will get updated correctly when the atlas gets replaced.
  373. - FIX: Disabling the button on click should no longer make it get stuck in the "clicked" state.
  374. - FIX: UICamera.lastTouchPosition is back.
  375. 1.86:
  376. - NEW: UIAtlas now has a "pixel size" property that affects MakePixelPerfect logic as well as sliced sprite's border size.
  377. - FIX: UISprite will now always ensure it has a sprite to work with, if at all possible.
  378. - FIX: UIDragPanelContents should now work correctly on mobile devices.
  379. 1.85:
  380. - NEW: Added Example 12: Better Scroll View.
  381. - NEW: Added a script that can be used to efficiently drag the contents of the panel: UIDragPanelContents.
  382. - NEW: Added a function replacement for SetActiveRecursively (NGUITools.SetActive), since the former has rare odd issues.
  383. 1.84:
  384. - FIX: Changed the way the font data is stored, resulting in potentially better loading performance on mobile devices.
  385. - FIX: UIPanel.Start() should now find cameras faster.
  386. - FIX: UIPanel will no longer use the clipping softness value unless soft clipping is actually used.
  387. - FIX: The way click / drag was handled has been changed a bit. It should now be easier to click buttons on retina screens.
  388. - FIX: Rebuilding an atlas was not updating fonts correctly.
  389. - FIX: Couple of tweaks to UIAtlas and UIFont's replacement feature.
  390. 1.83:
  391. - NEW: Added a simple script that can save the state of the checkbox (or a group of checkboxes) to player prefs.
  392. - FIX: A variety of minor tweaks.
  393. 1.82:
  394. - NEW: It's now possible to specify a "replacement" value on UIAtlas and UIFonts, making swapping of atlases and fonts a trivial matter.
  395. - NEW: UICheckbox now has an option to allow unchecking the last item within a group.
  396. - FIX: Most cases of FindObjectsOfTypeAll has been replaced with FindSceneObjectsOfType instead.
  397. - FIX: UISliderColors now keeps the slider's alpha.
  398. - FIX: Edit-time modification of UISlider's 'rawValue' in the inspector will now again visibly move the slider.
  399. - FIX: UIWidget will no longer consider its geometry as changed every frame if there is nothing to draw (empty text labels).
  400. - FIX: Atlas Maker will now create a new font if the name of the font doesn't match.
  401. - OLD: NGUITools.ReplaceAtlas and Font functions have been deprecated.
  402. 1.81:
  403. - NEW: UIInput can now be multi-line.
  404. - FIX: UILabel will now center-align properly again when a fixed line width was specified.
  405. - FIX: UILabel's effect (shadow, outline) will now be affected by the label's alpha.
  406. - FIX: UILabel's effect will now always be offset consistently, even if the scale changes.
  407. - FIX: Changing the widget's pivot will no longer cause it to become it pixel-perfect.
  408. - FIX: UISlider no longer requires a box collider.
  409. - FIX: Creating sliders via the wizard will now set their full size property.
  410. 1.80:
  411. - NEW: You can now add a colored shadow/bevel or an outline effect to your labels via a simple checkbox.
  412. - NEW: UICamera now has support for keyboard, joystick and controller input.
  413. - NEW: UICamera can now control what kind of events it will process (only touch, only keyboard, etc).
  414. - NEW: UISlider can now be adjusted via keyboard, joystick and controller input.
  415. - NEW: UIPopupList can now be interacted with using a keyboard or controller input.
  416. - NEW: Added a new script, UIButtonKeys that can be used to set up the UI for keyboard, joystick and controller input.
  417. - NEW: New Example 11 shows how to set up the UI to work with the new input types.
  418. 1.70:
  419. - NEW: Right click stuff has been replaced by just 'lastTouchID' with added support for the middle mouse button.
  420. - NEW: UIDragCamera now has scrolling wheel support just like UIDragObject.
  421. - FIX: UTF8 encoding is not supported in Flash. Wrote my own binary parsing function to make Flash work.
  422. - FIX: UILabel will now align to right and center properly when not pixel-perfect.
  423. - FIX: UIFont.WrapText will now trim away space characters when word wrapping.
  424. - FIX: UIFont.Print will no longer draw spaces (padding will still be applied).
  425. - FIX: UIPopupList will highlight the correct item even when localized.
  426. - FIX: UITable will now handle disabled children properly.
  427. - FIX: Fixed a crash on Unity 3.5.0 (sigh!).
  428. - FIX: Tweaked how pixel-perfect calculations work for labels.
  429. 1.69:
  430. - NEW: Added right-click support by simply adding an optional integer parameter to the OnClick event.
  431. - NEW: The contents of the UIPopupList can now be localized by enabling a checkbox on it.
  432. - NEW: You can now give the UIEventListener an optional parameter that you can retrieve later.
  433. 1.68:
  434. - NEW: Added a built-in Localization System.
  435. - NEW: Added a new example (10) - Localization.
  436. - FIX: Widgets can now be modified directly on prefabs.
  437. - FIX: Fixed the window stuttering in example 9 (when dragging it).
  438. - FIX: Widgets will now ensure they're under the right panel after drag & drop in the editor.
  439. - FIX: It's now possible to visibly modify the value of the slider at edit mode.
  440. - FIX: Scaling labels now properly rebuilds them.
  441. - FIX: Scaling labels will no longer affect the widget bounds in odd ways.
  442. 1.67:
  443. - FIX: Font Maker's Replace button will now re-import the data file.
  444. - FIX: Fixed all known issues with Undo functionality.
  445. - FIX: Fixed all known issues with prefabs (mainly 3.5.0-related)
  446. - FIX: Fixed clipping in Flash by adding a work-around for a bug in Flash export.
  447. - FIX: Removed 3.5b6 work-arounds for Flash as the bug has since been fixed.
  448. 1.66:
  449. - NEW: Added a new script: ShaderQuality. It's used to automatically set shader level of detail as the quality level goes down.
  450. - FIX: All examples have been updated to run properly in Flash.
  451. - FIX: NGUI now has no warnings using Unity 3.5.0.
  452. 1.65:
  453. - NEW: Example 9: Quest Log shows how to make a fancy quest log.
  454. - NEW: Added a new feature to UIPanel -- the ability to write to depth before any geometry is drawn. This doubles the draw calls but saves fillrate.
  455. - NEW: Clicking on the items in the panel and camera tools will now select them instead of enable/disable them.
  456. - NEW: UITable can now automatically keep its contents within the parent panel's bounds.
  457. - NEW: New event type: OnScroll(float delta).
  458. - FIX: FindInChildren was not named properly. It's now FindInParents.
  459. - FIX: Eliminated most warnings on Unity 3.5.
  460. 1.64:
  461. - NEW: Atlas inspector window now shows "Dimensions" and "Border" instead of "Outer" and "Inner" rects.
  462. - NEW: UIPanel now has an optional property: "showInPanelTool" that determines whether the panel will show up in the Panel Tool.
  463. - FIX: Trimmed sprite-using fonts will now correctly trim the glyphs.
  464. - FIX: The "inner rect" outline now uses a checker texture, making it visible regardless of sprite's color.
  465. - FIX: Selected sprite within the UIAtlas is now persistent.
  466. - FIX: Panel and Camera tools have been improved with additional functionality.
  467. 1.63:
  468. - NEW: Added a logo to all examples with some additional shiny functionality (contributed by Hjupter Cerrud).
  469. - NEW: Label template in the Widget Tool now has a default color that will be applied to newly created labels.
  470. - NEW: Added an option to TweenScale to automatically notify the UITable of the change.
  471. - FIX: Updating a texture atlas saved as a non-PNG image will now update the texture correctly.
  472. - FIX: Updating an atlas with a font sprite in it will now correctly mark all fonts using it as dirty.
  473. - FIX: Fixed all remaining known issues with the Atlas Maker.
  474. - FIX: Tiled Sprite will now use an inner rect rather than outer rect, letting you add some padding.
  475. - FIX: UIButtonTween components will now set their target in Awake() rather than Start(), fixing a rare order-of-execution issue.
  476. - FIX: UITable will now consider the item's own local scale when calculating bounds.
  477. - DEL: "Deprecated" folder has been deleted.
  478. 1.62:
  479. - NEW: Added a new class -- UITable -- that can be used to organize its children into rows/columns of variable size (think HTML table).
  480. - FIX: Font Maker will make it more obvious when you are going to overwrite a font.
  481. - FIX: Tweener will now set its timestamp on Start(), making tweens that start playing on Play behave correctly.
  482. - FIX: UISlicedSprite will now notice that its scale is changing and will rebuild its geometry properly.
  483. - FIX: Atlas and Font maker will now create new atlases and fonts in the same folder as the selected items.
  484. 1.61:
  485. - NEW: UICheckbox.current will hold the checkbox that triggered the 'functionName' function on the 'eventReceiver'.
  486. - FIX: UIPopupList will now place the created object onto a proper layer.
  487. 1.60:
  488. - NEW: Added a built-in atlas-making solution: Atlas Maker, making it possible to create atlases without leaving Unity.
  489. - NEW: Added a tool that makes creation of fonts easier: Font Maker. Works well with the Atlas Maker.
  490. - FIX: UIAtlasInspector will now always force the atlas texture to be of proper size whenever the material or texture packer import gets triggered.
  491. - FIX: Removed the work-around for Flash that disabled sound, seeing the bug has been since fixed.
  492. - FIX: Tweener has been renamed to NTweener to avoid name conflicts with HOTween.
  493. - FIX: An assortment of minor usability tweaks.
  494. 1.50:
  495. - NEW: The UI is now timeScale-independent, letting you pause the game via Time.timeScale = 0.
  496. - NEW: Added an UpdateManager class that can be used to programmatically control the order of script updates.
  497. - NEW: NGUITools.PlaySound() now returns an AudioSource, letting you change the pitch.
  498. - FIX: UIAtlas and UIFont now work with Textures instead of Texture2Ds, letting you use render textures.
  499. - FIX: Typewriter effect script will now pre-wrap text before printing it.
  500. - FIX: NGUIEditorTools.SelectedRoot() no longer considers prefabs to be valid.
  501. - FIX: TexturePacker import will automatically strip out the ".png" extension from script names.
  502. - FIX: Tested and working with the Flash export as of 3.5.0 f3.
  503. 1.49:
  504. - NEW: UIWidgets now work with Textures rather than Texture2D, making it possible to use render textures if desired.
  505. - FIX: Rewrote the UIFont's WrapText function. It now supports wrapping of long lines properly.
  506. - FIX: Input fields are now multi-line, and will now show the last line when typing past the label's width.
  507. - FIX: Input fields will now update less frequently when IME or iOS/Android keyboard is used.
  508. 1.48:
  509. - NEW: Added a new container class -- BetterList<>. It replaced the generic List<> in many cases, eliminating GC spikes.
  510. - FIX: Various performance-related optimizations.
  511. - FIX: UITextList will now handle resized text labels correctly.
  512. - FIX: Parenting and reparenting widgets will now cause their panel to get updated correctly.
  513. - FIX: Eliminated one potential cause of widgets trying to update before being parented.
  514. 1.47:
  515. - NEW: Added a new example (8) showing how to create a simple menu system.
  516. - NEW: Added an example script that adds a typewriter effect to labels.
  517. - NEW: Added a 'text scale' property to the UIPopupList.
  518. - FIX: UIPopupList will now choose a more appropriate depth rather than just a high number.
  519. - FIX: UIPopupList labels' colliders will now be properly positioned on the Z.
  520. - FIX: Fix for UISpriteAnimationInspector not handling null strings.
  521. - FIX: Several minor fixes for rare issues (such as playing a sound with no audio listener or main camera in the scene).
  522. 1.46:
  523. - NEW: Added a new class (UIEventListener) that can be used to easily register event listener delegates via code without the need to create MonoBehaviours.
  524. - NEW: Added a UIPopupList class that can be used to create drop-down lists and menus.
  525. - NEW: Added the Popup List and Popup Menu templates to the Widget Wizard.
  526. - NEW: UISlider can now move in increments by specifying the desired Number of Steps.
  527. - NEW: Tutorial 11 showing how to use UIPopupLists.
  528. 1.45:
  529. - NEW: Text labels will center or right-align their text if such pivot was used.
  530. - NEW: Added an inspector class for the UIImageButton.
  531. - NEW: UIGrid now has the ability to skip deactivated game objects.
  532. - NEW: Font sprite is now imported when the font's data is imported, and will now be automatically selected from the atlas on import.
  533. - FIX: Making widgets pixel-perfect will now make them look crisp even if their dimensions are not even (ex: 17x17 instead of 18x18).
  534. - FIX: Component Selector will now only show actual prefabs as recommended selections. Prefab instances aren't.
  535. - FIX: BMFontReader was not parsing lines quite right...
  536. 1.44:
  537. - NEW: UIGrid can now automatically sort its children by name before positioning them.
  538. - NEW: Added momentum and drag to UIDragCamera.
  539. - NEW: Added the Image Button template to the Widget Tool.
  540. - FIX: SpringPosition will now disable itself properly.
  541. - FIX: UIImageButton will now make itself pixel-perfect after switching the sprites.
  542. - FIX: UICamera will now always set the 'lastCamera' to be the camera that received the pressed event while the touch is held.
  543. - FIX: UIDragObject will now drag tilted objects (windows) with a more expected result.
  544. 1.43:
  545. - NEW: Added the Input template to the Widget Tool.
  546. - NEW: UIButtonMessage will now pass the button's game object as an optional parameter.
  547. - NEW: Tweener will now pass itself as a parameter to the callWhenFinished function.
  548. - NEW: Tweener now has an 'eventReceiver' parameter you can set for the 'callWhenFinished' function.
  549. - FIX: Tweener will no longer disable itself if one of OnFinished SendMessage callbacks reset it.
  550. - FIX: Updated all tutorials to use 1.42+ functionality.
  551. - FIX: Slider will now correctly mark its foreground widget as having changed on value change.
  552. 1.42:
  553. - NEW: Added a new tool: Widget Creation Wizard. It replaces all "Add" functions in NGUI menu.
  554. - NEW: Added new templates to the Widget Wizard: Button, Checkbox, Progress Bar, Slider.
  555. - NEW: When adding widgets via the wizard, widget depth is now chosen automatically so that each new widget appears on top.
  556. - NEW: AddWidget<> functionality is now exposed to runtime scripts (found in NGUITools).
  557. - FIX: Widget colliders of widgets layed on top of each other are now offset by wiget's depth.
  558. - FIX: Several minor bug fixes.
  559. 1.41:
  560. - NEW: Added a new tool: Camera Tool. It can be used to get a bird's eye view of your cameras and determine what draws the selected object.
  561. - NEW: Added a new tool: Create New UI. You can use it to create an entire UI hierarchy for 2D or 3D layouts with one click of a button.
  562. - NEW: Added a new script: UIRoot. It can be used to scale the root of your UI by 2/ScreenHeight (the opposite of UIOrthoCamera).
  563. - NEW: The NGUI menu has been enhanced. When adding widgets, it will intelligently determine where to add them best.
  564. - NEW: Sliced sprites now have an option to not draw the center, in case you only want the border.
  565. - FIX: Scaling sliced sprites and tiled sprites will now correctly update them again.
  566. - FIX: Changing the depth of the widgets will now correctly update them again.
  567. - FIX: The unnecessary color parameter specified on the material has been removed from the shaders.
  568. 1.40:
  569. - NEW: Major performance improvements. The way the geometry was being created has been completely redone.
  570. - NEW: With the new system, moving, rotating and scaling panels no longer causes widgets they're responsible for to be rebuilt.
  571. - NEW: Panel clipping will now actually clip widgets, eliminating them from the draw buffers until they move back into view.
  572. - NEW: Matrix parameter has been eliminated from the clip shaders as it's no longer needed with the new system.
  573. - FIX: Work-around for a rare obscure issue caused by a bug in Unity related to instantiating widgets from prefabs (Case 439372).
  574. - FIX: It's no longer possible to edit widgets directly on prefabs. Bring them into the scene first.
  575. - FIX: Panel tool will now update itself on object selection.
  576. 1.33:
  577. - NEW: UICheckbox now has a configurable function to call.
  578. - NEW: UICheckbox now has an animation parameter it can trigger when checked/unchecked.
  579. - NEW: You can now play remote animations via UIButtonPlayAnimations.
  580. - NEW: Tweener now sends out notifications when it finishes.
  581. - NEW: Tweener now has a 'group' parameter that can be used to only enable/disable only certain tweens on the same object.
  582. - NEW: UIButtonTween has been changed to use more descriptive properties. Check your UIButtonTweens and update their properties after upgrading.
  583. - NEW: Examples 1, 5 and 6 have been adjusted to use the new features.
  584. - FIX: Scrolling speed should now be consistent even at low framerates.
  585. - FIX: Shader fixes.
  586. 1.32:
  587. - NEW: Added a 'thumb' parameter to the UISlider.
  588. - NEW: Added UIForwardEvents script that can be used to forward events from one object to another.
  589. - NEW: Added the ability to enable and disable target game objects via UIButtonTween.
  590. - FIX: Input fields now support IME.
  591. 1.31:
  592. - NEW: Added a panel tool (NGUI menu -> Panel Tool) to aid with multi-panel development.
  593. - FIX: Variety of tweaks and minor enhancements, mainly related to examples.
  594. - FIX: UIDragObject had a rare bug with how items were springing back into place.
  595. 1.30:
  596. - NEW: UIPanels can now specify a clipping area (everything outside this area will not be visible).
  597. - NEW: UIFilledSprite, best used for progress bars, sliders, etc (thanks nsxdavid).
  598. - NEW: UISpriteAnimation for some simple sprite animation (attach to a sprite).
  599. - NEW: UIAnchor can now specify depth offset to be used with perspective cameras.
  600. - NEW: UIDragObject can now restrict dragging of objects to be within the panel's clipping bounds.
  601. - NEW: UICheckbox now has an "option" field that lets you create option button groups (Tutorial 11).
  602. - NEW: Example 7 showing how to use the clipping feature.
  603. - NEW: Example 0 (Anchor) has been redone.
  604. - NEW: Most tutorials and examples now explain what they do inside them.
  605. - NEW: Added a variety of new interaction scripts replacing State scripts (UIButton series for example).
  606. - NEW: Added a Drag Effect parameter to UIDragObject with options to add momentum and spring effects.
  607. - FIX: UICamera.lastCamera was not pointing to the correct camera with multi-camera setups (thanks LKIM).
  608. - FIX: UIAnchor now positions objects in the center of the ortho camera rather than at depth of 0.
  609. - FIX: Various usability improvements.
  610. - OLD: 'State' series of scripts have all been deprecated.
  611. 1.28:
  612. - NEW: Added a simple tweener and a set of tweening scripts (position, rotation, scale, and color).
  613. - FIX: Several fixes for rare non-critical issues.
  614. - FIX: Flash export bug work-arounds.
  615. 1.27:
  616. - FIX: UISlider should now work properly when centered again.
  617. - FIX: UI should now work in Flash after LoadLevel (added some work-arounds for current bugs in the flash export).
  618. - FIX: Sliced sprites should now look properly in Flash again (added another work-around for another bug in the Flash export).
  619. 1.26:
  620. - NEW: Added support for trimmed sprites (and fonts) exported via TexturePacker.
  621. - NEW: UISlider now has horizontal and vertical styles.
  622. - NEW: Selected widgets now have their gizmos colored green.
  623. - FIX: UISlider now uses the collider's bounds instead of the target's bounds.
  624. - FIX: Sliced sprite will now behave better when scaled with all pivot points, not just top-left.
  625. 1.25:
  626. - NEW: Added a UIGrid script that can be used to easily arrange icons into a grid.
  627. - NEW: UIFont can now specify a UIAtlas/sprite combo instead of explicitly defining the material and pixel rect.
  628. 1.24
  629. - NEW: Added character and line spacing parameters to UIFont.
  630. - NEW: Sprites will now be sorted alphabetically, both on import and in the drop-down menu.
  631. - NEW: NGUI menu Add* functions now automatically choose last used font and UI atlases and resize the new elements.
  632. - FIX: UICamera will now be able to handle both mouse and touch-based input on non-mobile devices.
  633. - FIX: 'Add Collider' menu option got semi-broken in 1.23.
  634. - FIX: Changing the font will now correctly update the visible text while in the editor.
  635. - Work-around for a bug in 3.5b6 Flash export.
  636. 1.23
  637. - NEW: Added a pivot property to the widget class, replacing the old 'centered' flag.
  638. 1.22
  639. - NEW: Example 6: Draggable Window
  640. - FIX: UISlider will now function properly for arbitrarily scaled objects.
  641. 1.21
  642. - FIX: Gizmos are now rotated properly, matching the widget's rotation.
  643. - FIX: Labels now have gizmos properly scaled to envelop their entire content.
  644. 1.20
  645. - NEW: Added the ability to generate normals and tangents for all widgets via a flag on UIPanel.
  646. - NEW: Added a UITexture class that can be used to draw a texture without having to create an atlas.
  647. - NEW: Example 5: Lights and Refraction.
  648. - Moved all atlases into the Examples folder.
  649. 1.12
  650. - FIX: Unicode fonts should now get imported correctly.
  651. 1.11
  652. - NEW: Added a new example (4) - Chat Window.
  653. 1.10
  654. - NEW: Added support for Unity 3.5 and its "export to Flash" feature.
  655. 1.09
  656. - NEW: Added password fields (specified on the label)
  657. - FIX: Working directly with atlas and font prefabs will now save their data correctly
  658. - NEW: Showing gizmos is now an option specified on the panel
  659. - NEW: Sprite inner rects will now be preserved on re-import
  660. - FIX: Disabled widgets should no longer remain visible in play mode
  661. - NEW: UICamera.lastHit will always contain the last RaycastHit made prior to sending OnClick, OnHover, and other events.
  662. 1.08
  663. - NEW: Added support for multi-touch