Difference between revisions of "User:Nexii Malthus"

From Second Life Wiki
Jump to navigation Jump to search
 
Line 1: Line 1:
[[Image:Nexblog-Cubitar-2.jpg|thumb|Nexii Malthus]]
{{LSL Header|ml=*}}
__NOTOC__
Personalised and curated Portal by [[User:Nexii_Malthus/About|Nexii]]
<div id="box">
{| width="100%" rules="all" style="border-width: 0px; border-spacing: 5px;"
|- valign="top" rules="all" style="border-width: 1px 1px 1px 1px; padding: 1px 1px 1px 1px; border-style: solid solid solid solid; border-color: gray;"
| height="1" width="30%"|


= Intro =
== Projects ==
<div style="padding: 0.5em;">
* [[User:Nexii_Malthus/Vertical_Sim|Vertical Sim]]
* [[User:Nexii_Malthus/SLMC|Second Life Military Community]]
* Ashguard
----
* [[User:Nexii_Malthus/Traffic|Traffic]]
* [[User:Nexii_Malthus/MREM|Modular Reactor Electricity & Maintenance]]
----
* [https://trello.com/b/OX8ANiT3/projects Projects Trello Board]
</div>
|width="60%" rowspan="2"|


Skills: programming, scripting, building, sculpties, textures, animation, design and architecture.
== LSL Features by category ==
<div style="padding: 0.5em;">
{| border="0" cellspacing="0" cellpadding="0"
|-valign="top"
|width="30%"|
* [[:Category:LSL Alpha|Alpha]]
* [[:Category:LSL Animation|Animation]]
* [[:Category:LSL Attachment|Attachments]]
* [[:Category:LSL Avatar|Avatar]]
* [[:Category:LSL Camera|Camera]]
* [[:Category:LSL Collision|Collision]]
* [[:Category:LSL Color|Color]]
* [[:Category:LSL Combat2|Combat2]]
* [[:Category:LSL Communications|Communications]]
* [[:Category:LSL Controls|Controls]]
* [[:Category:LSL Dataserver|Dataserver]]
* [[:Category:LSL Dialog|Dialog]]
* [[:Category:Experience_Tools|Experience]]
* [[:Category:LSL Face|Face]]
* [[:Category:LSL Group|Group]]
* [[:Category:LSL Inventory|Inventory]]
* [[:Category:LSL JSON|JSON]]
* [[:Category:LSL Light|Light]]
* [[:Category:LSL Link|Link]]
* [[:Category:LSL LinksetData|Linkset Data]]
* [[:Category:LSL_List|Lists]]
* [[:Category:LSL Math|Math]]
* [[:Category:LSL Needs Example|Needs Example]]
* [[:Category:LSL Permissions|Permissions]]
* [[:Category:LSL Physics|Physics]]
* [[:Category:LSL Prim|Primitive]]
* [[:Category:LSL Rotation|Rotation]]
* [[:Category:LSL_Script|Scripts]]
* [[:Category:LSL Sensor|Sensor]]
* [[:Category:LSL Sound|Sound]]
* {{LSLGC|Text}}
** {{LSLGC|Chat}}
** {{LSLGC|Notecard}}
** {{LSLGC|String}}
* [[:Category:LSL Teleport|Teleport]]
* [[:Category:LSL Texture|Texture]]
* [[:Category:LSL Time|Time]]
* [[:Category:LSL Vehicle|Vehicle]]
* [[:Category:LSL Video|Video]]
* [[:Category:LSL World|World]]
|width="50%"|
* {{LSLGC|Avatar}}
** {{LSLGC|Animation}}
** {{LSLGC|Attachment}}
** {{LSLGC|Camera}}
** {{LSLGC|Controls}}
** {{LSLGC|Sit}}
* {{LSLGC|Communications}}
** {{LSLGC|Chat}}
** {{LSLGC|Dialog}}
** {{LSLGC|HTTP}}
** {{LSLGC|XML-RPC}}
* [[:Category:LSL Detected|Detection]]
** {{LSLGC|Collision}}
** {{LSLGC|Sensor}}
** {{LSLGC|Touch}}
* {{LSLGC|Functions}}
** {{LSLGC|God Mode}}
* {{LSLGC|Inventory}}
** {{LSLGC|Creator}}
** {{LSLGC|Notecard}}
** {{LSLGC|Owner}}
* {{LSLGC|Media}}
** {{LSLGC|Prim Media}}
** {{LSLGC|Sound}}
** {{LSLGC|Video}}
* {{LSLGC|Movement}}
** {{LSLGC|Physics}}
*** {{LSLGC|Damping}}
*** {{LSLGC|Hover}}
** {{LSLGC|Rotation}}
* {{LSLGC|Object}}
** [[:Category:LSL Dataserver|Dataserver]]
** [[:Category:LSL LinksetData|Linkset Data]]
** {{LSLGC|Link}}
** {{LSLGC|Vehicle}}
* {{LSLGC|Permissions}}
** [[:Category:LSL Permissions/Asset|Asset]]
** [[:Category:LSL Permissions/Script|Script]]
* {{LSLGC|Prim|Primitive}}
** {{LSLGC|Effects}}
*** {{LSLGC|Light}}
*** {{LSLGC|Particles}}
** {{LSLGC|Face}}
*** {{LSLGC|Alpha}}
*** {{LSLGC|Color}}
*** {{LSLGC|Texture}}
* {{LSLGC|Region}}
** {{LSLGC|Ground}}
** {{LSLGC|Parcel}}
** {{LSLGC|Security}}
** {{LSLGC|Time}}
* {{LSLGC|Script}}
** {{LSLGC|Error}}
** {{LSLGC|Keywords}}
** {{LSLGC|Math}}
** {{LSLGC|Types}}
|}
</div>
|-valign="top" rules="all" style="border-width: 1px 1px 1px 1px; padding: 1px 1px 1px 1px; border-style: solid solid solid solid; border-color: gray;"
||


I consider myself pretty much an Ace of all trades.
== Resources ==
<div style="padding: 0.5em;">
* [[User:Nexii_Malthus/Style_Guide|Style Guide]]
* [[User:Nexii_Malthus/Scripting_Tips|Scripting Tips]]
* [[User:Nexii_Malthus/Visual_Studio_Code_Setup|How to use Visual Studio Code for LSL]]
----
* [[LSL Protocol|User-Defined Protocols & APIs]]
* [[LSL Script Efficiency|Efficiency]]
* [[LSL Script Memory|Memory]]
* [[LSL Hacks|Hacks]]
* [[LSL Benchmarking Scripts|Benchmarking Scripts]]
----
* [[User:Nexii_Malthus/Useful_Snippets|Useful Snippets]]
* [[:Category:LSL Categorized Library|Categorized Library]]
* [[:Category:LSL Library|Library]]
</div>
|}
</div>
[[Category:Portals]]
[[Category:Creation]]
[[Category:LSL|*]]


My passion is to excel in creation.
<!--
 
To break unknown barriers, to ''think outside the box''.
 
With the knowledge of other skills, I can mix, I can understand the limits of each skill, and the possibilities of each one. It is a joy, when you know, that you can bring an idea, from mere beginnings, up to a fully polished successful product. I like to therefore embody myself, as the very origin of creation in SL, you will often see me wearing my plywood cubitar.
 
Long-time resident (6.3yrs~?)
 
Avid game developer and content creator
 
= Projects =
 
== Current ==
=== Vertical Life Client ===
My own efforts to innovate the metaverse as we know.
Vertical Life Client
 
=== Vertical Life LSL API ===
[[User:Nexii_Malthus/Script_Collaboration|Script Collaboration]]
 
== LSL ==
 
I would love to know where and what you use those scripts for, I can only begin to imagine the possibilities with the geometric functions and the hierarchics system.
 
=== Fun Stuff ===


:[[Interpolation|Interpolation Library]], partially open-sourced.
:[[Interpolation|Interpolation Library]], partially open-sourced.
:[[Geometric|Geometric Library]], large collection of handy 3D maths functions.
:[[Geometric|Geometric Library]], large collection of handy 3D maths functions.
:[[PhysicsLib|Physics Functions]], partially open-sourced.
:[[PhysicsLib|Physics Functions]], partially open-sourced.
:[[Hierarchics|Hierarchics]], a self-aware, optimized and efficient joint system.
:[[Hierarchics|Hierarchics]], a self-aware, optimized and efficient joint system.
=== Simple ===
:[[FastConeSpread|Fast Cone Spread Algorithm]]
:[[FastConeSpread|Fast Cone Spread Algorithm]]
:[[Progress Bar]]
:[[Progress Bar]]


:Utilities, to-be-opensourced
=== Depecrated ===
:Navigation Spaces Pathfinder, closed source, development discontinued, code re-used.


:Motion Editor, development stopped, code re-used.
To add rotation
 
:[[ClickAndDrag|Click And Drag UI Component]]
 
:[[nexUI|User Interface Project]]
 
 
= Random Notes =
 
Mnemonic I use to remember rotation order:
 
To add rotation,
:Rotation = Local * Global;
:Rotation = Local * Global;


To take away rotation,
To take away rotation
:Rotation = Local / Global;
:Rotation = Local / Global;
The word-semantics here help how to visualize rotation addition.
Other useful distinctions may be ''Object-Frame'' for Local and ''Absolute-Frame'' for Global.
---
Taken from Linden Labs' opensourced client, project ''llmath'', file ''m3math.h''
Not sure why, but it helped me matrices suddenly 'click' for me. Before I was unable to understand the way a matrix worked, as being dyslexic hindered my understanding of basic mathematic concepts severely. The following representation/imaginative explanation '''helped a lot'''. Hope it may help anyone else if they find this.
<lsl>
// LLMatrix3 = | fx fy fz | forward-axis
//   | lx ly lz | left-axis
//   | ux uy uz | up-axis
</lsl>
<lsl>
// Creating Rotation Matricies From Object Axes
// --------------------------------------------
// Suppose you know the three axes of some object in some "absolute-frame".
// If you take those three vectors and throw them into the rows of
// a rotation matrix what do you get?
//
// R = | X0  X1  X2 |
//    | Y0  Y1  Y2 |
//    | Z0  Z1  Z2 |
//
// Yeah, but what does it mean?
//
// Transpose the matrix and have it operate on a vector...
//
// V * R_transpose = [ V0  V1  V2 ] * | X0  Y0  Z0 |
//                                    | X1  Y1  Z1 |                     
//                                    | X2  Y2  Z2 |
//
//                = [ V*X  V*Y  V*Z ]
//
//                = components of V that are parallel to the three object axes
//
//                = transformation of V into object frame
//
// Since the transformation of a rotation matrix is its inverse, then
// R must rotate vectors from the object-frame into the absolute-frame.
</lsl>
'''transpose''' means to switch the rows and columns, imagine applying a 90 degree rotation on the array, see above how X0, X1 and X2 occupied the first row, and instead now occupies the first column in the transposed matrix.
---
My little userpage shortcut to the [[LSL Portal]].
=== Todo, but never really do ===
Geometric Library:
:Create functions for [[Geometric]] for working out Normals on collisions.
:Multi-output functions at that maybe? Should better return a list...
:Replace global-variable-output functions with list returns.


Interpolation Library:
Interpolation Library:
Line 133: Line 171:
Hierarchics:
Hierarchics:
:Find a way to untangle a skeleton system easily. Example when rezzed via duplication or scripts reset while joints at arbitrary rotations, so that system can become highly reliable.
:Find a way to untangle a skeleton system easily. Example when rezzed via duplication or scripts reset while joints at arbitrary rotations, so that system can become highly reliable.
-->

Latest revision as of 00:36, 6 August 2024

Personalised and curated Portal by Nexii