Jump to content

Monkey Frog Studio

Members
  • Posts

    165
  • Joined

  • Last visited

Everything posted by Monkey Frog Studio

  1. Hello. I am testing bringing models from Blender into Leadwerks with collision hull. It is working perfectly and seems to be simple to do. However, I am noticing a difference between my models and the ones that come with Leadwerks. I cannot select my models in the viewport at all. I can easily select them in the Scene tree, though. So, what am I doing incorrectly that makes my models unselectable in the viewport? Thanks for any help.
  2. I would definitely allow glTF to import BOTH models and textures, else you sort of defeat the purpose of glTF. It is, after all, a SCENE export/import format, importing geometry, materials, lights, animation, etc. With glTF, I can set up an entire scene in my modeling program, comprised of many models, many materials, several lights, etc., and export the entire scene in one shot. Or, if I choose, I can just export out a single model. It's up to me. So, glTF would be great for creating level prefabs, consisting of wall and floor segments (for example), etc. There's not much sense, as far as I'm concerned, to only use glTF to import models and then have the end-user have to import the materials separately and apply them afterward.
  3. Sure. No worries. Anything I can do to help.
  4. Got ya. So, you are thinking of replacing MDL and TEX with glTF then.
  5. It would be great if we could click an "eye" (for example) to hide/unhide items in the scene tree, like you do with layers in programs like Photoshop.
  6. Hey, Josh. Here's an idea for you. I was watching a video on a game engine that is about to be released (Sheesh! There are zillions of them these days!) and the reviewer showed importing a glTF model into the engine via drag-n-drop (which is a nice feature, btw). When they dropped in the glTF, an import dialog opened. Earlier in this thread you had talked about wanting to use glTF just to bring in materials. Well, perhaps this could be done via an import dialog. So, for example, the end-user opens or drags-n-drops a glTF into Leadwerks, an import dialog opens and asks what they want to import ... model, material, etc. The end-user could just check/uncheck what they want (the default being all checked). Thoughts?
  7. Just a suggestion (and I hope you don't mind), but since the tutorial is aimed at non-programmers, it might be good to go into a little more explanation on things. For example, it might be good to have pointed out that things like "string.upper" is a LUA command and what it does. Even clarifying some things like explaining that the name, like MyFunction, can be any name, like how you name a variable however you choose. You sort of do this, but a little more would be helpful to complete newbs to programming.
  8. Ah! Thanks. What confused me was "upper" because the function name also contained "Upper" (though with a capital. Even though LUA is case sensitive, I was seeing the same thing when I read it. I understand this function now. Duh!
  9. Hello. I am fairly new to programming (been an artist all my life) and am learning from the Leadwerks Tutorial on LUA scripting. All is pretty simple to understand in principle, but I am struggling to understand this one example from Function Arguments: function PrintUpper(text) print(string.upper(text)) end PrintUpper("Functions can be fun.") The actual code in the function, print(string.upper(text)) ... what is going on there? I get "print" and I get "string", but what is "upper" in this case? Actually, a little help understanding what is going on here overall would be a big help. The other ways of using/declaring functions seem to make sense to me, but this one is eluding me for some reason. Any help would be appreciated. Thanks.
  10. Yeah, glTF shouldn't be the only format. OBJ and FBX should probably still be offered. However, I don't believe it will be long before most 3D programs offer glTF as an export option. Substance Painter already does. MODO and Blender already do (Blender via an AddOn). From a Google search I see that Babylon.js offers a glTF exporter for MAX. There might be others exporters for the other 3D apps, too. Oh! And there appears to be a number of tools to convert file formats, like FBX, to glTF, too. So, you can just export out of your 3D app via FBX, for example, convert it to glTF, then simply bring it into the app that requires the glTF file.
  11. I don't know or use Substance Designer, but Substance Painter will export to glTF 2.0. The purpose of glTF is to create a standard for exporting/importing SCENES, as per the Khronos website: As a result, I don't think that materials, by themselves, were in mind when they created this format. Having said that, it's great for what it does. And it gets us out from under the yoke of Autodesk, Autodesk FBX licencing, and the ever changing FBX format. Since it appears that glTF is only for scenes, could it still not be used to get materials into your engine? For example, someone could apply the material to any object, like a cube, export it, import into Leadwerks (for example) and then Leadwerks would provide access to the material so the end-user could alter it and/or apply it to other objects in Leadwerks? In Godot, once I have imported the scene via glTF, I can drill down to the material on an item, copy the material, and paste it to a totally unrelated object. So, glTF could still be used to get materials into Leadwerks to be both edited and used on other items, such as the CSG items there.
  12. You should be able to. I was dabbling with the Godot engine, which imports glTF. Once the mode, with the material, is imported, I was easily able to alter the material, changing roughness, metallic, swapping out the texture image, etc. So, this should be quite doable.
  13. glTF is fantastic for exporting/importing complete scenes, though, including animation. It would be great for importing prefabs, levels, level segments, characters, etc., into Leadwerks (or Turbo).
  14. I'll put together a simple cube with a material applied (texture, normal, AO, roughness, and metallic) later today (barring any unforeseen issues).
  15. Yes, but sometimes we only need to set a percentage (how metallic or how rough) and are not even using a texture map at all.
  16. Interesting, because glTF, for example, uses RGB differently: Red: Ambient Occlusion Green: Roughness Blue: Metallic I know glTF is not the industry standard, but it is catching on. I believe Unreal will be adding glTF import (if they haven't already).
  17. I don't know that, frankly, as I am just starting to learn Substance Painter (though not Designer at this point). I've been working in MODO for quite some time and am slowly transferring my work over to Blender in anticipation of v2.8's release. I work with another game engine and use glTF to bring in my models and materials. glTF makes it easy because there are simple rules for what channel is used for what. I think what I've seen elsewhere is the end-user typically exports out what they need/want to use, such as a texture (albedo), a normal map, and AO. Then, in the engine, they can create a new material and add their exported images to the proper channels (normal map image in the normal map channel, etc.). When a game engine imports glTF, for example, then it's up to the end-user to adhere to glTF specs. As long as they set things up properly in their 3D program, export to glTF, and if the game engine supports the format properly, then it's a smooth import from 3D app to game engine. I'm just using glTF as an example here. Not a lot of 3D apps or engines are supporting it yet, but I prefer it. Hopefully others will respond here and help to answer your question better than I have.
  18. Typically they are exported as a single MATERIAL. Typically, in 3D modeling, a "texture" refers to diffuse color or albedo. Thus, a texture is simply the color channel of a material. So, in 3D modeling programs, albedo (diffuse color) would be represented by one texture (such as a photo of bricks). A normal map would be another channel represented by another image (the normal map image). Metallic would be another channel of that material and roughness yet another channel, but both metallic and roughness would be part of the same material. Does that make sense (it's late and I'm tired ). So, one material to rule them all ( ), but that one material can reference several textures (or image maps), such as diffuse/albedo, normal, AO, etc.
  19. What I've commonly encountered is for metallic and roughness to be two separate channels. They represent two different things, so should each have their own channels. Something can be "rough" and not be "metallic". It's this way for glTF, in MODO, Substance Painter, and several other 3D and material creation apps.
  20. Hello. I would like to see viewport modes, like 3D Perspective, Front, Back, Left, Right, Top, and Bottom tied to keyboard shortcuts. This way, when working with a viewport expanded to a single viewport, I could hit a keyboard shortcut to change it to another viewport. Yes, this can be down via right-clicking and accessing the Render View, but that's a lot slower than simply hitting a key. Many 3D modeling apps allow for this so that the end-user can work in one viewport. We already have a keyboard shortcut for switching between quad-view and single view, so adding this would really flesh out the editor, in my opinion. I'm personally not a fan of using the function keys for this (like F12 to swap between quad and full), but will take what I can get. Some 3D modeling apps use the number pad's numbers to represent different viewports, allowing the end-user to swap between them with ease. Thanks.
  21. Are you talking about making one of the editor's viewports, such as the 3D view, the front view, etc., to be full screen within the editor? If so, there are several ways you can do this already. One is to right-click in the viewport you want to be full screen. A menu appears. Go to the bottom and select Single Viewport and that viewport will expand to full the editor. To return to the quad-view, just right-click and select Single Viewport again to uncheck it. You can also get the same thing by clicking the Single Viewport icon on the menu bar. It looks like a square with a smaller square in it with an arrow pointing up from the smaller square to the upper-right corner of the larger square it's within. You can also achieve this by going to View>Single Viewport. Lastly, you can simply use the F12 key to swap between quad-view and single view.
  22. Hello! If you open Leadwerks and go to File>Import, the drop down at the bottom will reveal all the file types. It's also listed here: https://www.leadwerks.com/learn?page=Tutorials_Editor_Textures and here: https://www.leadwerks.com/learn?page=Tutorials_Editor_Models-and-Animation So, for graphic file types, you have: BMP PSD JPG TGA PNG DDS The only 3D file type that Leadwerks currently accepts is FBX.
  23. BTW - One reason to do this is the "unit" cube (256cm on all sides) is roughly the height of a typical room. So, knowing this helps you to create pieces to an approximate scale.
  24. Hello! I've been slowly moving from my old 3D modeling app to using Blender, so I am in a learning state. I've been testing exporting base models from Blender into Leadwerks to get my art pipeline nailed down. After learning how to get FBX files from Blender into Leadwerks textured, the next step was to get objects from Blender into Leadwerks at the correct size! This took me a little bit to figure out, but was actually pretty simple to setup and understand once I got there. So, I thought I would share my current Blender setup with all of you just in case it might be helpful to someone. What I wanted to achieve was a grid and scale in Blender that matched the default grid in Leadworks. My goal was to create a "unit" cube, exported from Blender, that would match a cube of the same size created in Leadwerks. In Leadwerks I created a cube that was 256cm x 256cm x 256cm. This would perfectly fill one default grid square (with 8x8 smaller grid divisions per default grid). I wanted a 256cm x 256cm x 256 cm cube, created in Blender, to be the exact same size in Leadwerks. It took some fiddling, but here is what I set in Blender to make it all work: Press N to open the right-side panel, go to Display and change the following settings for Grid Floor: - Lines: 16 - Scale: 0.64 - Subdivisions: 8 Go to the Scene tab and go down to Unit Presets: - Length: Metric - Angle: Degrees - Unit Scale: 1.0 When exporting to FBX, the only change you'll need to make is to set SCALE to 0.50, otherwise the model will come in twice as large. Remember, the goal here is to have the geometry the same size in Blender as in Leadwerks. The Grid Floor settings create a grid like the one in Leadwerks. Since game engines typically like things in a power of two (2, 4, 6, 8, 16, etc.), most game editor grids have only 8 subdivisions. 16 lines gave me four complete "main" grids to guide me. You can increase this to make them larger, but I would do so by a power of two. So, since it's at 16 right now, the next step would be 32, etc. A scale of 0.64 allows a cube, for example, to be created at exactly 256cm (2.56m), matching the size of the one in Leadwerks and exactly filling one main grid square. With this done, the base cube imports into Leadwerks at exactly the correct size and snaps perfectly to the grid. Now, I am sure there are other ways to do this. My main goal was to get a same sized object out of Blender and into Leadwerks. This way I can work in Blender, creating level pieces, and knowing that they will work correctly in Leadwerks with it's grid system and with any pieces I create using Leadwerks CSG shapes. I hope this helps someone. I know I had a heck of a time trying to find help with this via a Google search, so I had to experiment and come up with my own way. Perhaps this will help someone and keep them from having to pull out their hair.
  25. I figured it out and was able to get it to work. Thanks, everyone!!!
×
×
  • Create New...