Skyline Changelog V0-9-6 BETA (Major Release)

Hello Friends,

We have finally got the update you have all been waiting for! Sorry for the delay but this update is a biggie covering the huge asset, material and management rewrite making your asset work flow possibly the fastest in industry. Huge libraries can be converted to Skyline in a few mouse clicks with tools for global model folder scaling texture to material conversions taking the hard work away from you so you will be left with more time to play!
This update also speeds up your effects work flow with a new particle action that enables instances to be save with your scene and depreciating the current class based particle effects, so please use the new particle action from now on. This and many fixes plus some user requests are also in this exciting update. Please read below for more information.

Porting Notes

There are a few things to port if you want to use the new features of skyline

  • Because the particle entity has been upgraded to an action, if you try and edit the old entity then it just wont work. You need to change to an empty node or a model and then add the Action “Effect – Sky Particle” to the entity and load the effect you had applied to the old entity. This will then show the same but allow you to edit with a much better workflow as seen in one of the below videos.
  • Because the material system has been rewritten, certain materials will be converted to singular materials if they are multi materials. Multi materials will still load but they will not be saved back to. As said before a multi material will be converted to single materials before they can be saved or edited and the material editor can do this for you, so can the asset manager on a right click of a multi material file.

These are new systems and we do expect there to be bugs and issues remaining that we haven’t caught. We are still in Beta and work with everyone closely to fix these.

New: Particle System Rewrite

The Skyline particle system has had a rewrite to make the development of particle effect more intuitive and more scene focussed. Standard files can still be used but we have also introduced the ability to save variations of your particle effect with the scene enabling fast and effortless particle creation with out the need for constant file saving.
Generate a variety of similar but unique effects based upon one file and save with your scene. Any of the new effect instances can be saved of from the updated particle editor as a new file for use in other scenes. Various crashes and bugs that were present in the old system are now fixed.

Blog for this system: Link to Particle System Rewrite blog

New: Material System Rewrite

This version of skyline has had a complete rewrite of the material system to remove some horrid workflows that have been plaguing users since the beginning of skyline.
No more have you got to have a material the same name as a mesh, nor have you got to write a material by hand when creating new materials.
With the new version of skyline you can apply any material to any mesh, but that’s not all. Now you can also apply any material to any submesh and bake that back to the original mesh if you want to use different materials as the base for any mesh. Nor do you need a preset for a mesh that has no dynamic content other than to have a material load on correctly.

  • New: FBX Converter rewritten to separate each submaterial into its own material file.
  • New: Assimp converter rewritten to separate each submaterial into its own singular material file.
  • New: Texture to Material: Drag texture onto mesh will always convert to material now. This avoid material errors on scene load backs
  • New: Texture to Material: If High Quality Mode is chosen when converting texture to material, normal and specular textures will be found if you use specific suffixes on the end of the filenames.
  • New: New material editor that can edit multiple material files at once
  • New: Bake to mesh
  • New: Reset entity to default mesh materials
  • New: Convert Multiple material files to single materials.
  • New: No more material images having green cards. All singular materials will generate a thumbnail to represent
  • New: New Material panel in the properties panel with visual material viewers that can have materials dragged and dropped onto to change the entity submesh materials.
  • New: Materials can now be renamed and change all the inner contents to match to keep materials functioning.
  • New: Lods can now share materials making performance more achievable.
  • New: Creating new materials now are usable and can be applied to any submesh
  • New: All material areas are updated to match the old workflow such as Forward to deferred, Advanced to basic and back and sync all materials.

Blog post for this subject: Link to material rewrite final blog

Videos to show workflow:

New: Prepare Folder For Skyline

A new feature to skyline for this update is the inclusion of a system to create usable assets that work and look good in minutes instead of days. We are not talking about setting single meshes up here but setting up entire packs in the mere blink of an eye(slight exaggeration, but still a few minutes) instead of days or weeks.
Texture libraries can be converted into usable materials that are apply able to all submeshes of each mesh and you will not have to worry about a mesh, texture, material with a duplicate name again. This is all taken care of in this feature to leave you with what you want to do the most; which is too play, make games and have fun without the hassle of setting your assets up

  • New: Editor made for preparing folders with options to control what happens
  • New: Convert all FBX to mesh files
  • New: Convert all Assimp to mesh files
  • New: Rename all assets to unique names that will not clash easily with any other without horrible looking names. This means:
    • Rename all duplicate texture names and remove spaces
    • Rename all materials and change all textures referenced inside the materials to the new names
    • Apply all the materials with an advanced material with auto found normal and specular maps
    • Rename all mesh files to unique non clashing names and edit mesh data to reference the new material names
    • Rename all skeleton and misc files that must be the same name as the mesh in order to work.
  • New: Convert all textures to materials that have normals and specular maps applied already
  • New: Change the scale of all the assets when preparing to leave you with usable assets at the end
  • New: Share materials for meshes that reference the same material names.
  • New:

Here is the rest of the changelog:


  • New: QTabWidgets can receive the changed index through the “_Changed(int)” suffix.
  • New: Asset Manager: When copying or renaming files & folders, the resources will be auto added.
  • New: Action – SkyParticle, this make the skyline particle easier to use and attach to any object. Please use this method for your skyline particles from now on as the old method will be phased out over time.
  • New: Translation Utility – If you have multi entity selected, then changing the rotation value will apply to all selected.
  • New: Translation Utility – If you have multi entity selected, then changing the position value will apply to all selected.
  • New: Add Actions all all multi selected entities in the scene
  • New: Renaming single materials will rename all contents in the file to match and retake the thumbnail image
  • New: Simple Character Controller: You can now choose the direction of movement now rather than the simple system. The basic still exists
  • New: Spawned Dynamic Controller: You can now choose the direction of movement now rather than the simple system. The basic still exists
  • New: Translation Utility: There is now a bake button
  • New: Asset Manager: You can now multi select regenerate mesh and material thumbnails.
  • New: Material Editor: You can now reset the material textures loaded on each slot
  • New: Skyline icon for applications has changed.

New Lua:

  • New: qt commands
    • New: qt.addComboItem( editorName, widgetName, itemText, (opt)itemIcon, (opt)insertPos )
    • New: qt.removeComboItem( editorName, widgetName, (opt)insertPos )
    • New: text = qt.getComboItemText(editoname, objectName, (opt)indexPos) — grabs end if position not specified
    • New: qt.setComboItemText(editoname, objectName, text, (opt)indexPos) — grabs end if position not specified
    • New: qt.clear( editorName, widgetName ) — works on QTreeWidgets, QTableWidgets, QLIstWidgets, QLineEdits, QTextEdits, QPlainTextEdits, QComboBoxes
    • New: qt.setTreeItemExpanded( editorName, widgetName, treeID, column )
    • New: qt.setTreeExpandAll( editorName, widgetName)
    • New: qt.setTreeCollapseAll( editorName, widgetName)
    • New: qt.getTreeItemText( editorName, widgetName, treeID);
    • New: qt.getListItemText( editorName, widgetName, listID)
    • New: qt.getTableItemText( editorName, widgetName, row, column);
    • New: qt.getHTMLText(editorname, objectname) – this returns the toHTML() function for a Qtextedit only
  • New: entity commands
    • New: entity.setAdvancedMaterial(id, materialname); This will automatically apply the _adv onto the end of the material name and default if not exist.
  • New: controller commands
    • New: controller.setMoveAdvanced(dccID, state);
  • New: character commands
    • New: character.setMoveAdvanced(entityID, state);


  • Updated: Converting a single .FBX to mesh will refresh the current folder showing in the asset manager.
  • Updated: Asset Manager: Large images like 4096×4096 used a lot of memory to display in the folder views. Now they are thumbnailed to max 512×512
  • Updated: Action – Rigid Body now has combo for static/dynamic/Kinematic
  • Updated: Asset Manager: When Regenerating a thumbnail for mesh or material, it will only change the item icon rather than refresh the entire folder.
  • Updated: Loading assets into the scene that load advanced shader is now 15-25% speed boost on loading :) (old: 6 seconds, new: 4.7 seconds).
  • Updated: Swapping between Advanced and Basic rendering modes is now instant compared to previous ventures.
  • Updated: When regenerating tangents, the mesh is automatically reloaded. One less mouse click lol :P
  • Updated: Scene settings far clip now auto adjust the skybox distance to keep sky displaying with in clip range.


  • Fixed: Physics Raycast: physics.rayFromPointToPoint had a flipped direction forcing negative numbers for range
  • Fixed: Physics Raycast: physics.rayFromPointToPoint did not have a normalised direction.
  • Fixed: Physics Raycast: physics.rayFromIDtoID did not have a normalised direction.
  • Fixed: qt.getText() did not return QTextEdit or QPlainTextEdit strings.
  • Fixed: Asset Manager: Renaming folder inside the explorer tree did not work on the right one unless you clicked it on first.
  • Fixed: Custom Qt Editor: Icons would sometimes not show because of faulty parsing with similar name sets. Now they will work correctly
  • Fixed: The custom Plugins no longer show extra text over the top.
  • Fixed: Particle System: SkyParticles could crash after attaching to an object and pressing stop/start, this is now fixed.
  • Fixed: Particle System: SkyParticles could lose attachment on repeated play back , now behaves correctly.
  • Fixed: Editor Plugins: TreeWidget Root index is set to 0 when clear() is used.
  • Fixed: Editor Plugins: TreeWidget expand all and collapse all are flipped.
  • Fixed: Material Editor: If you had 2 or more materials and one of them had reflection but the bottom material in the list didn’t, then none of them would have reflection and vice versa.
  • Fixed: Scatter entity plugin said min instead of max for certain properties
  • Fixed: Action: Entity – attach: Lights did not attach in the player or end game.
  • Fixed: Projects: When loading a second scene in the project, the file structure path got messed up inside the engine.
  • Fixed: Gizmo position did not change when properties position was edited.
  • Fixed: If you right clicked on a image and went to the asset manager, then it would have crashed if it had not been opened yet
  • Fixed: Triggers and other volumes would not run any game states other than the main states, this is now fixed and triggers work with all states.
  • Fixed: The player and game exe would not load a scene file due to silly mistake in code.
  • Fixed: Particles would show an error in the console for any missing particle file even if the particle was an scene data particle. Set to only show error message when using particle file.
  • Fixed: Asset Manager: Animations would not work if folder is prepared with “Share Materials”
  • Fixed: Asset Manager: Some normals and specular maps were not renamed correctly and contained underscores.