I am moving the topic from the other site. One reason to do so was to see if markdown really worked. I looks like it from preview. The old site required taking screen shots.
@Vinc3r, I am looking into processing gltf exporter shadergroup nodes, but the current code blows up. Will get baking working first, before resuming this.
Blender2Babylon add-on changelog
Blender Exporter Version 6.0.0
01 February 2019
Supports Blender 2.80 redesign
Removed Internal render materials support
Relocated Game Engine render properties used
Moved all exporter level custom properties from scene tab to world tab
Changes to world tab:
Properties from scene tab
Added Sky Box / Environment Textures section
Added Use PBR checkbox
Changes to mesh tab / proccesing:
Relocated Billboard Mode from Game Engine to here
Relocated most of material section to new panel in Materials tab
Remaining materials stuff now in ‘Baking Settings’ section. Added Force Baking checkbox to avoid multi-materials.
Blender’s mixed flat / smooth shading now supported
Alpha now supported in vertex colors
Changes for lights tab / proccessing:
Added PBR intensity mode custom property. When Automatic or not PBR, intensity scaled 0-1 from Blender’s Energy, where 10 is 1. Otherwise Energy passed, unmodified.
Range property now supported using Blender property Radius
Hemi light type is no longer supported. To get a BJS hemi light use area type, & specify Size X for range.
Added new custom properties panel for Materials:
Relocated Back Face Culling checkbox from Game Engine to here
Relocated Check Ready Only Once checkbox from Mesh tab to here
Relocated Max Simultaneous Lights from Mesh tab to here
Relocated Name Space from Mesh tab to here (might be in TOB only, since JSON files cannot share materials)
Mesh baking can be reduced to only the texture channels required, keeping other image texture based channels (not for multi-material meshes)
Nodes based renders (Cycles & eevee) not always just baked. See chart for properties / textures & where values are from. Properties are only assigned when no texture input to socket.
STD Property / Tex
PBR Property / Tex
From Nodes-Socket
diffuseColor / diffuseTexture
albedoColor / albedoTexture
Diffuse BSDF - Color, Principled BSDF - Base Color
Diffuse BSDF - Color, Transparency BSDF - Color, Principled BSDF - Base Color
bumpTexture
bumpTexture
Normal Map - Color, Principled BSDF - Normal
Certain nodes are allowed, and are either ignored or just passed thru
Mix Shader, used mostly for non-principled trees
Separate RGB, for metallic textures wt roughness / AO
Frensel, when not PBR
glTF legacy nodes (glTF Metallic Roughness or glTF Specular Glossiness) produce an error saying to switch to standard Blender nodes or use glTF exporter
Texture / UV parameters are optional Nodes, when input to a texture node (ignored when must be baked, baking uses them though)
Mapping node for (translation to offset), (rotation to ang), (scale to scale)
Texture Coordinate & UVMap nodes for coordinatesIndex
When a material channel cannot really be represented by mapping, then it will be baked. Examples:
A Noise or other procedureal texture to Principled BSDF - Normal, then a bump texture will be baked
Any node which is not explicitly supported or ignored
Just to be clear. We will be testing on 2.79. You should just be switching away from glTF nodes to standard ones. I am not sure a .blend saved in 2.80, loads right in 2.79.
Yep, I already had a pure 2.79b Cycle version, and will test on this scene I think. And my 2.8 Eevee scene aren’t using gltf nodes neither.
And you’re right, you can’t open a 2.8 scene into a 2.79b.
Materials which are needed for the glFT exporter are not working right now. Will start to look at that. Anyone with Cycles .blend files, please run them through & see results in sandbox. A good source for test .blends may be Blendswap. Do not know if they filter by cylces or not though. For testing it may easier to inline textures, so only one file to drag to sandbox.
Visually, with the scene custom properties folded into world, the panel now looks like:
Thanks, a version which actually runs on 2.80 is very close. Many fixes to current alpha. Testing with the current alpha is probably no-longer productive. Do not want to put out a 2.80 beta without full functionality. Once these are done, will go through a Javascript exporter to JSON exporter diff process.
The first fully operational exporter for Blender 2.80 has just been published.
I am not getting perfect results, especially with .blends originally saved under 2.79 (even with cycles materials). Not all that sure that it is a problem with the exporter.
I have done all my coding based on a new scene, created under 2.80. If you bring in an old scene, properties of various objects look like those of the version they were saved under. This caused a black scene for me. I deleted the lights, & re-added lights and things could then be seen.
Have no plans right now to try to handle things with old lights. Do not want all old crap forever in the exporter. The changes in the first post of the topic have been edited. Click the pencil to diff from last time.
The first fully operational exporter for Blender 2.80 has just been published
Way to go Jeff - you are the master I hopefully will give it a try over the weekend. Write now I’m wrestling with a video game I was given for Christmas - keeps throwing an error that has something to do with DirectX.
Hi guys. A little info at this website about 2.79 internal textures… needing to be converted to cycles/eevee.
On another site… someone said something about using FILE->APPEND choice… to bring 2.79 scenes into 2.8. I dunno what that does (differently than a load)… but I thought I’d mention it. Good work, guys.
@Wingnut, yes only the simplest materials using the old internal renderer can be loaded in 2.80 unscathed.
The File->Append thing is a way to copy objects from one scene to another. I do not know if copying an object from a 2.7x scene into a new 2.80 scene actually changes those objects, but there are a number of things about a scene which is not in the objects that would get ditched, regardless.
Ok have now turned on the environment texture / skybox section in world. @sebavan, ignore question in old forum about this. BJS now supports .hdr textures in 4.0, so can be turned on. Here is a PBR cube in a skybox of a cave.
@gryff, your fix is also in latest .zip. Version is not changing while in beta.
It’s as if every other triangle has backward facing normals, rendering the model see-through. I’ve tried disabling backface culling however, and the results are the same. The meshes also disappear from various angles
Ah! I found the problem. It seems the PBR alpha mode doesn’t default to 0.
This exporter works great! The animations work as expected as far as I can see! Thank you very much for your work, I’m a pretty big fan of Blender 2.8, and I think that may have just been the last part of my workflow that needed 2.79!
Just something I noticed is that camera’s default settings have changed for 2.80. Specifically, Focal length (FOV in BJS). In 2.79, it is 35mm / .8576 FOV.
In 2.80, it is 50mm / .6911 FOV. This length will make your scene look closer than in 2.79. To get things the same size (without changing the camera) you need to move the camera back in the opposite direction of where it is aimed.
2.80 will make things look less distorted when you get close, however. I actually use a 120mm / .265103 FOV lens, so faces do not look weird, if you get really close. FYI, default FOV if you create your own in BJS is .8
@gryff, I am not sure where you talked about posting issues with the outliner on Blender site. I am trying to use 2.80, and it is even worse (I am using today’s versions). That might be good, meaning they just are not done in that area.
What I noticed is child meshes / objects are not under the parents. It is just a flat list. It’s terrible / impossible today to figure that out. This is not usable, unfortunately.
@JCPalmer I’ve been exploring this issue too - though my version is prior to Christmas. Trying to work with parenting which as you point out does not not obviously put children under a parent. Right now, I’m creating a special collection, putting parent and all children in that collection, then checking The Properties Panel ->white square icon(Objects) -> Relations -.then selecting a parent from the drop down if not already parented. And maybe get the latest version. Right now, the exported file does recognize the parent.
I will hopefully post some examples later in the evening or tomorrow.