Shop Mobile More Submit  Join Login
Please help to improve XPS the XNA Model Viewer !
What functionality of XPS/XNALara/GLLara you like? - What should be changed?
Your opinion is needed.
Designate what bothers you and what you like. Then it would be changed.

Our group will make a statement at any point. And later we append a list to show what changes will be implemented.

Thanks in advance.


What is XNALara/XPS

XNALara is a real time posing and rendering program written by Dusan Pavlicek and had been released for the first time on February, 20, 2009 on
Dusan, the creator of XNALara, managed to extract Lara Croft's model from the game Tomb Raider Underworld (TRU), converted it for his program, using the Microsoft XNA framework, and shared it, letting people play with it and create art.

Dusan has updating his program many times (release 001 - release 136). Dec 31, 2010 he has stoped the development and has released the program source code for using without any restrictions as "Public domain software".

I've extended the program for the use of non-TRU character with the version 7.2
From that time, XNALara gained a lot of new fans, as it is not "Tomb Raider" or "Lara Croft" related only anymore, as every single 3d model can be imported in XNALara via Blender or 3ds Max.

There is a huge -and quickly growing- list of 3d models and characters you can use in XNALara and create wonderful renders! Since version 9.7.8 therfore XNALara has the new name XNALara/XPS (Xna Posing Studio). Release 137 - release 174

XNALara - 3D posing software, free of charge, primarily for Tomb Raider: Underworld model. The first model was Lara Croft, wearing her "jungle shorts".

Please respect, you needs a permission document, given by the real owner, if you will share a model which is not made from scratch by yourself.

XPS - "XNA Model Viewer" and 3D posing software based on XNALara, for any 3D character. With a rather rudimentary way to make a keyframe animation. Free of charge.

Se il bicchiere mezzo pieno o mezzo vuoto in ultima analisi lo decide l’osservatore.
Ho un turbine di pensieri in testa che sto cercando di mettere in ordine.
Dato che siete come e più di me smanettone e che sicuramente c’è fra voi un’ottima percentuale che ha testato XPS,
vi domando un parere.

Se potete cercate di essere “analogici” o forse meglio qualitativi: se c’è qualcosa che vi piace ditemi perché, se qualcosa non vi piace idem.
In un successivo contributo farò il possibile per informarmi ed esprimere un’opinione sensata su ciascun aspetto sollevato.

A voi, e grazie!

Additional Feature
  • - Done :wave: Add monochromatics to make it look almost like celluloid or an old photograph.
  • - Done :wave: Cel toon shader
  • - Done :wave: Request by :iconxxfreakyunderworldxx: New 'Render Goups' which supports multiple UV sets -- 10.9.7 supports 2 uv layers for every 'Render group'
  • - Done :wave: Request by :iconatlantib:  Wardrobe feature. Sample…
  • - Done :wave: Request by "Hongfire Wong" Support for "texture packs" :thumbsup: XPS 10.9.3a2
  • - Done :wave: Auto add camera pivot to familiar bone name, if this pivot are missing inside the model. Request by :iconkinasuki: and :icontombraider4ever:                    
  • - Done :wave: Emission maps like this…  --  Request by :iconxo-bahamut-ox: and :icontakebon999: Made available by :iconzcochrane: :hug:
                       Tutorial for XNALara/XPS here… ;)
  • - Done :wave: I wish there was quick save-pose like the quick save image. :thumbsup: Ctrl+P (F9) added in XPS 10.9.2 Request by :iconrobotrobot99:  
  • - Done :wave: Add a double click event to the bones list in the control window to zoom in on selected bone. Request by :iconkinasuki:
                       New camera pivot "selected bone"
  • - Done :wave: "Quick-save image F5" now always stores the image without visible bones names and link squares and HUD filename -- Request by :iconarmorvil:
  • - Done :wave: Add a way to add text to the image via speech bubbles -- Request by :iconarmorvil:
  • - Done :wave: "Lock Position"…
  • - Done :wave: "Lock Scene "…
  • - Done :wave:  New render group with support of Specular & Emission Maps at the same time.
  • - Done :wave:  Emission effect with diffuse, light, normal, spec and emission maps
  • - Done :wave:  Rotation of the camera. Sample…
  • - Done :wave:   Drag and Drop for pose-, model and scene files would be awesome.  XPS 11.1…

  • XNAStraightPose Feature like this…
  • REDO command which reverts the effects of the undo action. Ctrl+Y or Ctrl+Shift+Z
  • Full screen 'Render Window' without title bar
  • The ability to move lights around
  • A new menu item to split a .scene file up into several scenes to load each one individually.
  • The ability to add sounds to make your own avi movies, like "Emitting the noise of a flushing toilet to spare a woman blushes."
  • A function to automatically detect (measure) the exact X,Y,Z position of certain point in an environment..
  • Texture "projection painting"
  • Dual sceen support. For example the "main render window" onto the secondary monitor and the dialog windows like the "Control window" onto the primary.
  • Store animations as animated gif --  leave marks though.
  • Environmental maps which react to light
  • Importing and exporting of other file formats to xps, like smd or psk
  • Collada .dae import/export
  • Merge 2 models to swap a outfit
  • Auto rigging and skinning
  • Model light settings individually
  • Inverse Kinematics
  • Displacement maps……
  • Support for KINECT to pose or record animation…
  • Soft shadows… + source code
  • Reflective maps  [Raytrace… ]  or  [Mirror texturing… ]
  • Raytrace shadows…
  • Create and move lightpoints (colour, intensity, shadow on/off etc)  
  • Ability to rotate bones on the 3 global axis, as well as its local axis.
  • Morphing system

I like this. Dont touche it.
  • Rename bones feature

Keep the feature, but change it on this way:
  • - Done :wave:  When you hide bones in the control window can they be hidden in the viewer as well
  • - Done :wave: Improvement of the representation of the double Alpha transparent. Example Eyelashes behind Hairs.  This feature are integrated with the Blender exporter 2.3… Request by :iconsterrennacht:
  • - Done :wave:  Set the "shadow default flag" for environments, with .OBJ format, to OFF Request by :iconkinasuki:
  • - Done :wave:  Restore the last position of the Render Window.  :thumbsup: BUG fixed.  Sorry for the inconvenience. Request by :iconcheojunio:
  • - Done :wave:  "Alt + LMB click" set camera  position  on ground plane. Request by :iconkinasuki:
  • - Done :wave:  Change the skipped folder warning into only one notification popup (toggleable) with the list of skipped folder.  New menu item 'Settings-->Show warnings' ... Warnings disabled by default

  • A alternate way to select bone joints inside the 3D window, when body parts or bones are overlapping.
  • After you clicked on a bar or slider, you can use the mouse-wheel to adjust it.
  • All shortcuts from 'Main Window' can be also used if the 'Control Window' are activated.
  • Controls can be altered in the settings menu. The current settings are the default ones.
  • The stay on top setting still isnt working .. at the start. you have to disable then reenable it so the control window stays on top. ... I cannot reproduce this issue
  • Different "back face culling" settings for different models in the same scene at the same time
  • Mechanism like the option "Look at camera". :) Now just need for cloth/hair.
  • More lightsources :thumbsup: New "Spotlight"… with XPS 10.9.5 "Spotlight Edition"
  • Specify the image size when using the bloom effect. :) Currently, a team member implement it. We are waiting for his result.
  • Setting the intensity of the normal map. :thumbsup: We hope that this is already implemented in GLLAra.
    I have no experience with shader programming. :(
  • I want to cast a shadow on any object.  :thumbsdown: :thumbsup:  I do not think that this will be possible in "real time",
    perhaps with shadow maps… , but it's not trivial to implement.
  • Keep "Lock" model and add an option to "freeze" a model.
  • On this time, you can only toggle 2 outfits… not 3 ore more.…
  • Interchangeable .scene format.
  • Selecting multiple models at once

I dislike this. Please remove/change it.
  • - Done :wave: Support for deprecated render groups 24-25-26-27 Request by :iconsumirehaikuxna:
                     :thumbsup: Implemented with XPS 10.9.2 Retro Edition
  • - Done :wave: Not so many warnings Request by :iconxxfreakyunderworldxx:
                     :thumbsup: Implemented with XPS 10.9.6 Reboot Edition. New menu item 'Settings-->Show warnings' ... All warnings are disabled by default


  • Link to the latest version XPS 11.0 -- Osiris Lara Edition
  • Download link XNALara/XPS 10.9.6 alpha 6 ... DELETED ... Nobody want to test it ... nobody reports BUGs… )
    • ChangeSceneFile included -- If a model of a scene does not exist, then it is possible to manually search for it.
    • New feature. "Alt + LMB click" set camera position on ground plane.
    • BUG fix -- Speech Bubbles are now saved with and without BLOOM toggled off.
    • New render group number 34_ as test group for new features
    • All render groups allows now to selected a mesh part and recolor the mesh's texture using a color dialog. XPS tinted the mesh part with the values by the entered colour. XPS mix this color with the texture colors. Choose a white color to restore the original texture color.
       The Blend-Mode are Multiply - combines the picked  color  with the colors of the underlying texture to produce darker colors. Multiplying the texture with black results in black, multiplying with white produces no changes.  All other colors  are combined with the colors on the underlying texture image.
        To inking a part invoke the new menu item
      Options-->Change mesh part color
      Many many thanks and kiss @:iconshabbychick: for the support :blowkiss:

      Of course, you can store the result with Modify-->Save_Generic_Item as .mesh. As either binary Generic_Item.mesh (xps.xps) or ascii (Generic_Item.mesh.ascii) file.

      Shader code, at this time with "Multiply color blend mode" ... next time with "overlay blend mode":

      float4 MeshColor; // set with XPS->Options->Change mesh part color

      float4 GetDiffuseColor(float2 texCoord) {
         float4 color = tex2D(DiffuseTextureSampler, texCoord) * MeshColor;
         if (!DisplayTextures) {
           color.rgb = 0.75;
         return color;

      XNA code:

      // Get the color from the color dialog box ... invoked by "XPS->Options->Change mesh part color"
      System.Drawing.Color color = dialog.Color;
      meshDesc.MeshColor = new Color(color.R, color.G, color.B, color.A);
      // ...
      // Convert the Object from Color to Vector4
      Vector4 meshColor = ConvertLightColor(mesh.MeshColor, mesh.ColorIntensity);
      // ...
      // RenderSceneFull

EDIT: XPS 10.9.6a6 now with same color blend model like the Photoshop 'Overlay blend mode' -- Many many thanks and kiss @:iconshabbychick: for the support :blowkiss:

Add a Comment:
adjie7x Featured By Owner Aug 25, 2015  Hobbyist Digital Artist
why i can't load TRU model in xps 11? the model appear but invisible, how can i fix that?
D1m0s Featured By Owner Aug 26, 2015  Hobbyist Digital Artist
You need to load non-generic models via File -> Add models. Non-generic models are those named f.i.: "lara_jungle_shorts.mesh", etc.
adjie7x Featured By Owner Aug 26, 2015  Hobbyist Digital Artist
thanks :)
ringetsu Featured By Owner Jul 21, 2015
Now the bonenames can be changed with a bonedict.
Will you please make a similar function that bonenames change for the pose file, maybe like posedict?
You know that now many porters have their own preference for naming the bones, apply a pose for another model need to change the bonenames of pose file or models. I think posedict should works easier for load pose for different models than bonedict.
junkymana Featured By Owner Jun 30, 2015
About the new format (NGFF), will it work with non poseable meshes? Like objects and such. Or will we need to add a root bone for this?
XNAaraL Featured By Owner Edited Sep 27, 2015
It will works with non poseable meshes.

1) XNALara adds always a root bone to the mesh ... even for .obj files (except for the RG's 11, 12, 14, 15, 16, 17, 18 and 19 which don't react to bones)
2) Without bones, the NGFF Format IS exactly the .OBJ format ;)
junkymana Featured By Owner Sep 27, 2015
Cool :)
Thanks for answering.

Any information on how the interface changing would be? Like for posing the IK's and such?
Will it support or even create bone shapes?
XNAaraL Featured By Owner Sep 28, 2015
Nothing planed ... on my side ... perhaps bone shapes like Blender 5.x 6.x 7.x

The interface for textures without RG's is like here… ;)
junkymana Featured By Owner Sep 30, 2015
Looks interesting. I think I'll give a try to that beta version, thanks :)
I will keep waiting for any news about the new format (NGFF) ;)
lskittles Featured By Owner Jun 14, 2015
I was thinking more possible lighting options, like moving light within the scene manually or adding additional light sources. The light parameter sliders are OK, but at times I wish that there were more than 3 light parameter tabs. It may be too much to ask for but it would be pretty awesome.
LoftyLight Featured By Owner May 20, 2015  Hobbyist Digital Artist
Can you make it so that when the bone you have selected is locked, you can still select other bones in 3D view by ctrl or shift clicking them or something? That way you wont accidentally click them but can still change bones easily when you actually want to through the 3D view.
XNAaraL Featured By Owner May 25, 2015
I really dislike the feature "Lock bone selection"… and I personaly never use it.

"select other bones in 3D view by ctrl or shift clicking them" is not possible, because:
LoftyLight Featured By Owner May 26, 2015  Hobbyist Digital Artist
Yeah I hate locking bones but the view rotation uses left click so often bones get selected when I'm trying to rotate. It's really annoying.

That is why I added "or something". I don't care what key I have to hold down to do it, anything is fine as long as the functionality is there.
daventrychris Featured By Owner May 14, 2015
Can you please add with Folder with XPS All Blender 2.49 Scripts to make XPS and Blender work, so People can know what to Install
Can you make txt with XPS to say what People need to run XPS and with witch Blender and Python
ringetsu Featured By Owner May 10, 2015
Could pose load/save menu show the tree structure?
And certain parts could be checked. Just like I could check the head tree for expression change.
This will be convenient.
XNAaraL Featured By Owner Edited May 11, 2015

Thanks a lot for this suggestions :hug:

  1. "Pose load/save menu show the bone tree hierarchy" sounds great. :thumbsup::thumbsup::thumbsup: and using the "Control GUI" widget, it should be easy to implement.
  2. "Using the load/save pose menu, certain bones chould be can checked" exist already since XNALara version 3.0 -- release 024… 
    • Quote: "it's possible to load/save not only the pose of the entire body but also the pose of selected parts of the body (selected bones), such as the face, hands etc."

       I’m surprised at how often I encounter people that don’t know how to select multiple bones in the XNALara/XPS "Load/Save pose" dialog.
       The "Load pose" dialog has as title Select bones to load: not without reason.
      If the dialog pops up, there are all bones selected by default.
    • To deselect a bone:
      1. Hold down the CONTROL key (Ctrl) on your keyboard, and deselect the bones, which you don't wants
    • To select multiple bones:
      1. Or. click with the left mouse button the bone which you want and hold down the Ctrl key, and still holding down that button, select the second, third, etc. bone. You have more than one selected.
      2. Now here is how you select a range of bones:
        1. Hold down the SHIFT button, and then click the first bone
        2. Then scroll down to the last bone you want to select with the SHIFT button still down. Now you’ve selected everything in between as well. Simple. ;)

Again, you can select/deselect whatever bones you want. It’s a fast way to select mutiple bones, and it works like your windows explorer.

Hope today’s tech tip for the average joe was helpful.

By the way, on a personal note, I’m feeling a bit lonely! I’m not sure if I’m talking to an empty room or if anyone is actually finding my tips helpful. Please leave a comment if you can – otherwise, I guess it’s better if I just stopped wasting my time.

“If a tree falls in a forest with no one to hear it, then does it make a sound?”

D1m0s Featured By Owner Jun 13, 2015  Hobbyist Digital Artist
I like ringetsu's idea Thumbs Up  But I want a checkbox there to switch between treeview and "oldview" :D
ringetsu Featured By Owner May 12, 2015
I know how to select some of the bones.
But you know that there are too many bones and I have to scroll up and down.
So that I think the tree hierarchy is more convenient.
I'm glad that you would do this.
LoftyLight Featured By Owner Edited May 6, 2015  Hobbyist Digital Artist
All this is just a small fraction of things that I would like to see changed or added. I don't want to sound grumpy or anything, but as a professional software and video game developer with a lot of OCD, I find a lot of things extremely annoying even if they are small. So here goes:

Add bone quickslots. Ctrl+1-9 to save a bone to quick slot. 1-9 to select bone from quick slot. (Change the Head/Body/Whatever centering buttons to Shift+1-5 etc instead.)

Change the 3D view mouse control scheme to be like Blender or 3DS Max. I can't stand having to use left click for the view since I keep clicking on bones by accident. Locking bones isn't helpful (nor is it needed) cause constantly locking and unlocking bones just to be able to rotate safely is dumb. Instead of left click and shift + left click, make it middle mouse button and shift + middle mouse button. Or better yet, have options for which control scheme to use.

Need a button to quickly switch focus between the control and 3D window. Something like pressing tab to switch focus back and forth quickly. It's so horrible when you press QWE to do rotations and realise you're focused on the bone window and it jumps to some random bone you don't give a damn about and then you have to find your bone all over again. Not to mention it ends up expanding the bone group and the bone list becomes a total mess again.

A bone search and filter with basic wildcards like "-ctr" to filter out all bones that contain "ctr".

Completely rearrange the menu. That thing is a mess. Sections should be split more like:

File - All scene opening/saving/exporting related commands.
Model - All model related commands.
Pose - All pose related commands.

(Save) Make Ctrl-S save scene.
(Save As...) Make Ctrl-Shift-S save scene as.

For the QWE and Shift+QWE controls, what is the point in having to left click and drag on top of that? Why not just hold Q and move mouse? That's just another opportunity to select a random bone you don't want by accident when bones aren't locked (something that shouldn't even be a feature).
XNAaraL Featured By Owner Edited May 6, 2015
thx for this suggestions. :hug:

Of course, I have first to translate the whole text, but some comments at this time:

D1m0s works currently to rearrange the menu. His first result, you can see here… and download there… (You must Login to see the download link)

Ctrl-S is already used to save the selected item as "Old .mesh" file. Of course, I dislike this shortcut, and saving a .mesh file in the data folder is a fault for non Generic Items ... Must be fixed.

For the QWE and Shift+QWE controls, you have not to left click. Confused. Of course, you must first select a bone ... and left click select a bone.

All other suggestions sounds "well thoughtful".
LoftyLight Featured By Owner May 6, 2015  Hobbyist Digital Artist
Thanks for taking the time to read and respond to all that.

Ah yeah, I already downloaded 11.1. I was happy to see that I could finally close the window with the close button on the 3D window. lol. That was actually one of my complaints that I later edited out as I found out about this newer version.

For QWE, I meant that currently you hold Q for example and then you left click and drag in the window to rotate the bone. I think it would be better to just hold Q and move mouse without having to left click and drag. I just think it would be best to avoid left clicking with as many things as possible. It would be better to have left click select bones and do nothing else so you wont need to lock bones anymore since you wont ever click on one by accident while trying to do something else. Accidentally clicking bones has been one of the most frustrating things for me and locking bones is not comfortable at all cause I have to keep pressing Ctrl-L constantly and I switch between bones a lot.

Another thing I wanted to see added is multiple bone selection. Everything would be so much easier if I could select multiple bones at once that aren't in the same group.

Also, another feature I was thinking about, though it is a little harder to implement, would be an IK system where you can choose 3 bones and it will create an IK solver that you can drag around to automatically and accurately bend at the joint. So for example I could link thigh + knee + ankle and it would create a draggable IK thing at the ankle that will automatically bend the leg at the knee when I move it around. It would make posing limbs much much easier.
XNAaraL Featured By Owner Edited May 7, 2015

About IK: ==>… ... already on the TODO list in the "opening post" above:

  • Inverse Kinematics
  • Drag and Drop for pose-, model and scene files would be awesome.

About QWE: :hug: Now I understand.

About multiple bone selection: Iit is a little harder to implement, because it breaks the existing design. ==>…

zecle Featured By Owner May 6, 2015   Digital Artist
config→display bones. uncheck !
since it's a pain, i always disable this feature. you won't need to press ctrl L anymore.
LoftyLight Featured By Owner May 6, 2015  Hobbyist Digital Artist
But I select bones by clicking them in the 3D view. I don't want to hide them all.
junkymana Featured By Owner Apr 28, 2015
Could it be an option to reload the model selected? And to be functional for the different formats (.mesh, .ascii and .xps)?
I think it can be helpful when testing. Instead of having to remove the model or reset the scene and then import again.

And a curiosity question. Why when having a model ported to XPS and later imported back to Blender (don't know with other 3d programs), the bones are possitioned differently? To me it happens all the time specially with the helper bones (twist, ctr, adj, fix, etc. Each porter give a different name). And the rest of the bones have a different rotation, I mean, the bone axis are facing differently.

I don't know why. When I place the armature for later start rigging and after do the port, I place the bones in one way. And after re-importing, this is different. The only ones who keep the original positions are the spine and neck bones.

Not something that bothers me too much, just with the fingers. But I am curios why this happens. :baffled:
XNAaraL Featured By Owner Edited May 3, 2015
Facepalm1 There IS an option to reload the selected model, since XNALara 7.3 -- release 080
- new menu command Clone selected model: it will create a clone of the currently selected/active model; the clone will be created on the exactly same position as the original model (use Ctrl click on the ground to place it somewhere else), with the same scale and pose applied to it

When YOU having a model ported to XPS, you should know about what you have done ... and what you have not done! Hover over a model in XNALara: Since XNALara 1.2 -- release 003, the bones link(s) (fulcrum) are visual as bone selector in the 3D window. It is a dot. Take a look into the .mesh.ascii file:
root hips
0 # parent index
0.0 1.140024 0.0
The model contains the "bone name" (root hips), the number of the parent bone (0), and the xyz coordinate of the bone Joint (0.0 1.140024 0.0). Thats all. There are no informations about something like rotation, direction, lenght, bone head and tail ... or "bone axis". Therefore, if you  later imported the model back to Blender ... the bones cannot have a different "direction" ... because the bones of the model have none direction ;)
About "Each porter give a different Name ... yes ... what a bummer ... nobody cares about the naming convention.

I don't know why YOU place the bones in one way and why you dont save this as .blend file ... if you want to start rigging later.
BTW: ALL bones have after re-importing the original positions (xyz coordinate ) ... depend of the Floating point - precision of Blender ... not only the spine and neck bones.

I am curious why nobody was wondering about XPS - Countdown Axis Edition -- release 174
-  Bone axis can be visualized. The Config Menu has a new option to display a coordinate cross along with the feature to turn on/off x-ray.
It was a lot of effort ...and it is not easy to visualize something which not exists ... like the bone orientation ;)
junkymana Featured By Owner May 4, 2015
I'm aware of the clone option. But does it really reloads the model from the folder or just copy the one opened in XPS? My question was for testing purposes. Lets say I exported a model and I found is too shiny in XPS. I later have to edit the specular values of the .ascii and later re-import again to see if I'm happy with the result. If I could reload the model the same way as with the reload textures option, it will be for helpful.

And I do save as .blend files when doing the port; I'm not crazy, lol :). I'm not exporting and importing over and over something is not finished :) I was just wondering, because when finishing those models and using them in the future, I found with that bone issue. Not really a problem for making pictures, but for animations I have to do some adjustments, specially if using constraints.

Anyway, is not a big deal. As I said, I was just curious abut why. Now I do know :)

About the bone names by each porter... I think I will make a discussion and see what comes out. Maybe we can find an agreement for a standartd naming. At least in general, just like with the rest of the bones we already use. Who knows.

With the Countdown Axis Edition... maybe is because they didn't or don't know (me included) that XPS doesn't have information about bone orientation. Possibly they can't really appreciate something they don't understand, not more than the fact that there is a new function in the program. I think it could be the reason.

Thanks for answering.
And of course for your information and time given here in the community :)
XNAaraL Featured By Owner Edited May 5, 2015
Right, the clone option do really reloads the (binary .mesh or .xps) model from the folder.

OK, we can add a new feature "Reload selected item" similar as the reload textures option.
My way for such modification test is:
Because I have open the "Windows explorer" to select and edit the Generic_Item.mesh.asciiI file ... I use the new Drag&Drop Feature from XPS 11.1… and move (Left mouse click and drag over) the modificated model inside my XPS 3D window. Now I can directly compare both Versions ... and with "Modify-->Flags OK" I can save the best Version as binary (xps.xps) ... without handle the whole Dialog Gadgets.

Like saying prev ... the .mesh file do not contains this "bone direction" informations ... therfore we needs a new model format ... called "NEW Generic File Format (NGFF)"… .... and unfortunately this dont wants our porters ... the deveopers want it, of course :lol:

About the bone names ... ==>… there is already a Standard naming convention  ... but nobody cares ;)
The same happens with the "XNALara armature requirements"

Axis Edition was a request by our previous XPS Publisher @xo-BAHAMUT-ox here… ;) It is difficult to refuse a publisher request, even if it means a lot of effort. :lol:
Sometimes a little feature needs a big redesign and a big effort. The sames happens with the "XPS 10.9.7 -- Manolo Manolis Edition" request… or the "Countdown Lock Edition" feature  "Bone values are now shown with a more precise value (this can be typed in the Control Window, but also by using the mouse and holding the Ctrl key down.)" or the "Scale Edition" feature "scale bones" (along the non-existent xyz axis ... and even for all bone childs (visible and the unused /invisible bones) ).
... other BIG Features like "Stereoscopy", "Shadows" or "Preview image" makes almost no effort and are quickly done :) However, so it’s a battle that I do not always win.

Edit to Add
Quote "... to edit the specular values  ..."
Failed idea  In my opinion, this IS a BIG Feature for modder ... with a Little effort for developer ... To make the "render parameter" editable with a menu item ... similar as the "Shader-->Bump specular gloss" menu item ;) ??? Idea  or like the "Modify-->Flags" menu item Idea ... or ... :baffled: 

junkymana Featured By Owner May 5, 2015
Yes, editing the specular values could be a good option for XPS too. I don't know how I didn't came with that myself Scratch Head. I guess I'm more used to do all the editing in Blender :)

About that NEW Generic File Format (NGFF)... wich features will it have? The thread is all in German and I don't understand nothing :(. I only know English or Spanish.
XNAaraL Featured By Owner Edited May 6, 2015

The New Generic File Flormat (NGFF)

The current ".mesh.ascii" format has many disadvantages:

  • As noted by you, the format does not allow to define the bone alignment, for example.
  • The swizzle coordinates can not be specified.
  • "Bump specular gloss" can not be defined.
  • The first floating point value in the mesh name defined depending on the "Render Group Number" the brightness in the specular map / texture ... or the "highlight BumpSpecular amount" ... or the intensity of the metallic/reflective effect. Very ambiguous and not very user-friendly.
  • The use of "Render Groups" is very troublesome.
  • Not every combination of texture images is possible. For example, the dummy light maps and flat bump maps are annoying.
  • It is difficult to write an importer or exporter for other 3D applications.
  • The file extension ".mesh" is ambiguous.
  • The file extension ".mesh.ascii" ... with two dots ... is problematic in other operating systems, like MAC
  • There is already a very common file format for static meshes ... Wavefront .OBJ ... which is supported by all 3D applications. Why not extend it with a armature support ;)
  • ...

The new format should make everything easier. For programmers and for porters.

For example, if you have a model with a diffuse map, a bump map and a specular map. Why should you search for a matching "Render Group Number"? Why add a dummy light map to use the exsisting RG 24/25 ? Why should you ordering the maps exactly in this order "Diffuse, Lightmap, Bumpmap, Specular" ?
For example, if you have a model with a diffuse map, a glow map and a displacement map. Why should you have to remove the last two textures? If the app cannot current render this effect, than the app has to ignore this maps. At the time, there was RG 24/25 available, many porters has remade here models again, What a pity!

If you use the Render Group 28/29 (metallic reflections eq environment map) you have to write in the "Readme.txt" ... "Note that this effect requires shader model v3.0. Otherwise, the model appears black" ... How funny is this? A XNALara/XPS user dont know what is a "shader model". He/she do not know which shader model their video card supports. But XNALara/XPS know RG 28/29 required pixel shader 3.0 and XNALara/XPS know which shader model the video card supports. With the NGFF, the porter says in the format "this texture is the enviroment map" and XPS use this map, if the video card support it ... otherwise the map are ignored.
If XPS run on a video card which can handle the displacement map, and your model have a displacement map and a bump map assigned in the new file format, then XPS render the model using this map like the image on the right side… ... if the video card is not strong strong enough then, with the new file format, XPS will render the model like the image in the middle… . And if the user have a grappy laptop, the model will looks like the "base model" on the left side. Even better than showing a black screen.
The file format define what material is wanted and the app produce the best possible result ... dependig of the computer system. But the format must allow to define every parameter and data.

Current, if your model have only a diffuse and a specular map, you find no matching "Render Group Number". Why adding this annoying dummy maps (bump and/or light map)? It waste your time. It waste the time for rendering purpose (because the dummy maps must decoded for every vertice and pixel). It is wasting memory space for the dummy maps ... And XNALara/XPS has already a shader for diffuse and a shader for specular map! XPS need only the information (body_d.tga is the map_kd equal diffuse ... and body_s.tga is the map_ks eqaul specular) And the order does not matter ;)

zCochrane, the developer of the MAC version GLLara and myself as developer of XPS, have discuse there… many details for the new file format. We talks about the best charset (UTF-8) ... about models which contains a annoying absolute texture path, like C:\Users\tc.demec\Downloads , which caust trouble. We talks about binary vs ascii ... motorola vs intel bit order about the internal differences between the RG's 5,7,16, 18, 10, 13 and 21 (all this RG's supports ony the diffuse texture). We talks about the best way to design the format for easy and quickly loading and rendering (memory mapping) ....

There exisit already the wavefront .OBJ format for static (non poseable) models. This is a geometry definition file format first developed by Wavefront Technologies for its Advanced Visualizer animation package. The file format is open and has been adopted by other 3D graphics application vendors. For the most part it is a universally accepted format.

For a first try, I have extended this .OBJ format with the necessary information about the armature. As result, the NGFF consists of 3 files:

  1. .obj --  The file with the extension .obj that represents 3D geometry alone and the skinning data (bone weights and bone indices).
  2. .mtl --  Materials that describe the visual aspects of the polygons are stored in a external .mtl (Material Template Library) file
  3. .lm3 --  The file with the extension .lm3 (Lara Mesh version3) contains all informations about the armature

The new format would be

  • easy to use
  • easy to create
  • easy to implement for XPS, GLLara, Blender, 3ds max, lightware ...
  • can be already loaded by almost every 3D app for rendering purposes (except XNALara/XPS :lol:)
  • easy to edit
  • a summary of all positive and negative experiences
  • flexible
  • expandable
  • fast
  • interchangeable
  • easy to convert to other file formats
  • modular
  • future-proof
  • open source
  • and is committed by the developers of different 3D applications

Zantetsukens-Cut Featured By Owner Jun 18, 2015  Hobbyist Digital Artist
one thing I find myself fighting lately is the 0 degree bone roll. I made eye with dilating iris's for xnalara,
but I had to set the eyes pointing striate forward or they would dilate at an angle. because of the forced angle the models i use them on seem sort of cross eyed.  
IIReII Featured By Owner May 13, 2015  Hobbyist General Artist
so many features... OMG where i can get (^_^) i am so excited...
XNAaraL Featured By Owner May 18, 2015
Where ?
Just a first try ... the Blender 2.49 exporter… ... unfinished at this time
junkymana Featured By Owner May 6, 2015
The paragraph where you talk about discussing with zCochrane and all that, I got lost :). I think my knowledge doesn't reach that level Stupid Me!.

Besides that, everything else pretty much all ok. And I see a very promising format. I totally support the idea of make it real for XPS.

It's true what you say about the RG and those dummy textures. It is a little annoying and is something I've been wondering since I more or less learned about working with XPS and Blender. I actually work more in Blender, but I like exporting my ports in XPS and also prevewing them here.

-Will this format be capable of supporting IK riggings? Other constraints?
-Will this mean you (the developers) will have to create a NEW program or "just" need to upgrade XPS?
-Will it be compatible with previous formats? If so, I don't see the problem with other porters. And normal users (not porters) wouldn't really care as long as they can play/work with the models, right?
-The actual limit about 4 weight per vertex will still remain or it could be increased?
-Will it keep the texture information while importing/exporting between other 3D programs? Something similar as like what johnzero is trying to do with his script for Blender 2.7x. (I guess here depends on wich programs importing and how the scripts are made, but just wondering).
-Will this also include material editing possibilty? (colour, shine, etc).
-What's the difference between binary and ascii? Will one of them give more posibilities or is it relative? (Basic explanation as possible here, please :))
-In your discussion about binary vs ascii... the final decision would be one of them or any chances of keeping both? (probably I first will need to be answered with the previous question)
-And finally, will you gift me with at least a 50% of your brain :).

Sorry for killing you with questions, but I'm really curious about this. And sorry if any stupid question:scratch:. I hope is not too anoying for you.
XNAaraL Featured By Owner Edited May 7, 2015
A question is never "stupid" ... sometimes, some "answer" are stupide ;) Without questions, there are no evulutions. ;)

"Will this format be capable of supporting IK riggings? Other constraints?

Yes, of course. 
Inverse kinematics (IK) is used to determine a set of joint
angles in an articulated structure based upon the position
of a given node in the hierarchical structure.…
  Inverse Kinematics (IK) requires some informations, like "bone direction", "bone axis", "bone lenght" and "maximal rotaton values" along the xyz-axis… ...
The new Format allow to store this informations inside the .lm3 file. The question, do  modelers, modder and porter set these values, is still open. XPS will calculate missing values, if sufficient other values exists.… For example, IF the bone have the "right" name "leg right knee" ... and not something false like "right lower leg" ... AND the model is in proper T-Bone pose, THEN  XPS can set the maximum Rotation along the x-axis to +130/-0 degree and along the Y-axis to +10/-10 degree and Z-axis to +0/-0
XPS 11.1… has already a feature to detect missing/wrong bone names: "13. New Pose script (Commands-->Run pose script) to determinate the missing bones (Saved as file MissingBones.txt inside the .exe Folder)" ... but of course, the model should always include the proper constraints. Therfore, the Blender and 3Ds max exporter must be extended.

"-Will this mean you (the developers) will have to create a NEW program or "just" need to upgrade XPS?"
No ... (and yes). It is a BIG upgrade. The methode to load/save a model is quickly written. But at this time, XNALara/XPS use intern the "Render Groups" for render the models. Dusan has called this RG's "MeshGroups". We needs the exsisting "Render engine" for the old models ... and we must write a complete new Render Engine to support the new models (without the existing limits). The first step (update) is simple to find the best RG for the model and use this "MeshGroup" number for rendering. But this do not allow (for example) to combine a reflection map with a specular map (because such a RG does not exist) even XPS has a shader for reflection (metallic, enviroment) maps and a shader for specular maps. But we can extend the  features agil ... step by step. IK is also a BIG modification. It changed the control GUI slider, the posing algorithm, save/load pose file, load/save item ... loading old .Scene files (with bendings greather the IK Maximum values ... etc

"-Will it be compatible with previous formats? If so, I don't see the problem with other porters. And normal users (not porters) wouldn't really care as long as they can play/work with the models, right?"
Yes, it will be compatible with previous formats.
The problem with other porters (and our Publisher is also such a porter ;) ) is: ... how to say this without been rude? ... the problem is the same like creating the "old" Generic_Item.mesh format… (Written 03/2009 ... released 12/2009) or with the "new" Generic_Item Format (2011 ... XNALara/XPS 9.8 with "optional items") ...
And it is the same Problem like to release the Blender Import/Export script ==>… ...… <== and follow pages ... :lol: ... I try to say it  kindly ... A beginner can now, using the new format , release models with more features and more faster,  than a veteran with all his experience using the old format. And using the new format, the expert is now a beginner like everybody else.
And normal users (not porters) wouldn't really care as long as they can play/work with the models. Right !!!

Edit to Add
"-The actual limit about 4 weight per vertex will still remain or it could be increased?"
It will still remain. But in my opinion, 4 weights per vertex is sufficiently.
It is a limit of the Microsoft XNA framework, and Microsoft has stopped to support the XNA framework…

"Will it keep the texture information while importing/exporting between other 3D programs? Something similar as like what johnzero is trying to do with his script for Blender 2.7x. (I guess here depends on wich programs importing and how the scripts are made, but just wondering)."
Right, it keep the texture informations. What johnzero do for his Blender scripts and what mariokart64n makes for his 3D Studio max scripts is ... trying to mapping the "Render Groups" to the native texture types. Without the RG's (table) it is easy to set the materials on the right way, because the new file format contains the necessary informations in a common way like

   map_Ka lenna.tga                # the ambient texture map
   map_Kd lenna.tga                # the diffuse texture map (most of the time, it will be the same as the ambient texture map)
   map_Ks lenna.tga                 # specular color texture map
   map_Ns lenna_spec.tga         # specular highlight component
   map_d lenna_alpha.tga          # the alpha texture map
   map_bump lenna_bump.tga    # some implementations use 'map_bump' instead of 'bump' below

"-Will this also include material editing possibilty? (colour, shine, etc)."
Right. The .mtl file  is a companion text file that describes the surface shading (material) properties ... and can be edit with Notepad.

The ambient color of the material is declared using Ka. Color definitions are in RGB where each channel's value is between 0 and 1.

Ka 1.000 1.000 1.000 # white

Similarly, the diffuse color is declared using Kd.

Kd 1.000 1.000 1.000 # white

The specular color is declared using Ks, and weighted using the specular exponent Ns.

Ks 0.000 0.000 0.000 # black (off)

Ns 10.000 # ranges between 0 and 1000

Every material can be transparent. This is referred to as being dissolved. Unlike real transparency, the result does not depend upon the thickness of the object.

d 0.9 # some implementations use 'd' Tr 0.9 # others use 'Tr'


"-What's the difference between binary and ascii? Will one of them give more posibilities or is it relative?"
ASCII can be edit with a text Editor like Notepad. Example Generic_Item.mesh.ascii ... but if you not know what you do .... you can destroy the format. --> 
Binary is faster to load and needs lesser disk space, but you need a application (app) to edit it. Example xps.xps or Generic_Item.mesh ... and as app XPS-->Modify-->Flags
It is a "design decision" ... and it makes no matter for "normal user". ASCII is modder friendly (and nice to have for scripter) ... Binary is programmer friendly.

"In your discussion about binary vs ascii... the final decision would be one of them or any chances of keeping both? (probably I first will need to be answered with the previous question)"
A possible decision could be: Geometry data binary (.obj) and material (.mtl) data (texture names, colours, shine ...) and bone names (.lm3) in ASCII format.… ... at this time, my opinion is ASCII (UTF-8), because my tests with the NGFF proof: Every 3D application can already import the (test) NGFF, using the .obj importer, without any problems. The exsisting .OBJ importer/exporter can be easy Extended with bone Support. Example Blender 2.49 exporter…
Of course, keeping both is possible.

"And finally, will you gift me with at least a 50% of your brain"
Unfortunately impossible. By a stroke last year, I have lost 50% of my memories.
Unfortunately not a joke :(
:lol: Jus remind me at "The Hitchhiker's Guide to the Galaxy" as Trillian's mice offer to buy Arthur's brain, leading to a fight when he declines. ... Or, as Zaphod Beeblebrox puts it, why not replace Arthur's brain with an electronic one? "You'd just have to programme it to say What? and I don't understand and Where's the tea? Who'd know the difference?"

BTW: Writing in english is anoying for me.

(2 Replies)
MermaidPrincess9001 Featured By Owner Apr 24, 2015

Add a bone bookmark list of sorts where a user can add/remove a selected bone to/from the quick list. It'd make life much easier if I could just add the few bones I'm working with and jump between them really quickly.

Add functionality to move bones between groups and make new groups.
XNAaraL Featured By Owner May 7, 2015
I has read your sugesstion again. Now I understand your request "add a bone bookmark list ... the few bones I'm working "

Yes. Right. True. This is a useful feature. I try to implement it. How you do select a bone? With the "Control Window" or with the "3D Window" ?
XNAaraL Featured By Owner May 3, 2015
Thanks for this suggestions.

"bone bookmark list" Done…

"move bones between Groups. Make new Groups. Delete groups" Also done, since "XPS 10.9.8 -- Manolo Manolis Edition  -- release 168", "XPS 10.9.4 -- Wardrobe Edition Release -- release 164" and "XPS 10.7.1 -- release 149"… 
- If you want to move the bone from the wrong goup "head" to the right group "hair", then click inside the "Control Window" to the bone named "head front hair left" ... Press F2 ... and rename it to "hair front left"
Every "blank" (space bar) sign, makes a new node.
- If you want to remove a Group, click on the node (for example "hair") ... press F2 ... and delete the node name (string "hair" to "" .... without the quotes) 
DIDpedoTED Featured By Owner Mar 24, 2015
Is there any way to prevent your model from shiny texture loss from attaching an item to it and save it as a generic item?
This problem has been bugging me for years...Do i need to use blender or 3DS max for the job?
XNAaraL Featured By Owner Mar 27, 2015
 Thumbs Up
Will be fixed with the next version.

No, you do not need Blender or 3DS max. Notepad is sufficient…
T0mbSt0n3 Featured By Owner Aug 22, 2015  Hobbyist General Artist
Just to let you know, I don't encounter this anymore using XPS 11.1 Beta. Tried testing on several models and did not experience any shiny texture loss.
XNAaraL Featured By Owner Aug 22, 2015
 Thumbs Up thx for this info
DIDpedoTED Featured By Owner Mar 27, 2015
Omg...thanks you so much..
I feel like an idoit for two years without realising it was that simple all along!

I feel so fuffiled thanks you ^^
KiNASuki Featured By Owner Mar 20, 2015
I would like to suggest a reworking for alternate texture feature. As of right now, we have the alternate texture on a folder on same level directory, marked with "Model -- Alt" .

however, with current implementation, alternative textures that affects different meshes will requires more more and more folders that combine them. 

Example, most of DoA models comes with alternative panties color and wet skin textures. Given 4 panties colors variation and wet skin textures, we need to have 8 folders alone (1 base + 7 alt) . to cover all combinations.

My suggestion involves adding a load alternate texture via file -> load alternate textures.. and simply reload and replace those alternate textures on a current model.
XNAaraL Featured By Owner Mar 21, 2015
thx for this suggestion :hug:

1. "Model -- Alt"

2. Right

3. "DoA models" ... Would be nice to have such a original model for testing ... but I thinks, I understand.

4. Sounds great. And easy to implement into XPS.
It is like "copy those alternate texture into the model folder" and press F8 (File-->"Reload textures of selected model" ) ... just using a "File selection dialoag box" instead of "copy those alternate texture into the model folder"

Tomorrow you can test it (Beta version) <==
BTW:… ;)
KiNASuki Featured By Owner Edited Mar 21, 2015
Example model -> xnalara-customized.deviantart.…
2 base model (long and ponytail hair)
4 panties recolor
1 wet textures

Make sure we can load multiple textures set at once.
XNAaraL Featured By Owner Mar 23, 2015
Hmmm .... I does not find the original model made by "Marina Pelacchi" ... a port is useless ... and this porter is on my "ignore list"
KiNASuki Featured By Owner Mar 23, 2015
zareef's DoA port then..…

this one have 4 panties retex and wet tex
Add a Comment:

:iconxnalaraitalia: More from XNALARAITALIA

More from DeviantArt


Submitted on
October 19, 2012
Submitted with


38,874 (7 today)
22 (who?)