mark.pizzolatto Posted February 2, 2019 Share Posted February 2, 2019 (edited) Okay - so I know not exactly a good topic name... So thanks to the subscription for the entertainment version can play some more with the engine... However, ran into some major (for my project) issues that either I overlooked or cannot find in the documentation. Okay - so basic info for what I am making at this moment: galaxy... 1) so I need to be able to render potentially hundred of thousands of stars (scale is not important at the moment) - 1.1) while I have used - its been slow: Billboards & ObjectMeshClusterPtr 1.2) If not these, then maybe a dynamic mesh to represent the galaxy - however will need to make a dynamic texture (material) to make it look correct 2) In the future, will need to "zoom-in"/click on stars - I have it working with ObjectMeshClusterPtr, not the rest... 3) Future points that I will be working on that if I can get hints/notes - i.e. can/cannot do... 3.1) runtime (realtime) terrain generation - using this library http://libnoise.sourceforge.net/ 3.2) runtime (realtime) texture/material generation for previously listed item. 4.1) multiple textures - for stars - would like to put a "sun" texture on the surface and have it change color and appear to emit light - I am guessing that I will need to write my own shader for this? 5.1) What about merging multiple meshes into one? - Example: Say I have a tree with 4 meshes - the wood core, the bark, the branches and the leaves... Merge all 4 into 1 mesh (yes I could do this in the modeling software) then say in the fall "select" the leaves to change colors and fall? <- could be done with animations and particle systems. Sorry if my question is a little scatterbrained/not coherent... Mark Edited February 3, 2019 by mark.pizzolatto Link to comment
silent Posted February 4, 2019 Share Posted February 4, 2019 Hi Mark, 1,2) Do you really need to see all of the stars at the same time in a viewport? That might be very tricky. I would recommend to take a look at the Compute shader sample in SDK Browser -> Samples -> C++ -> Render -> Compute Shader. However, this approach will not work with mouse clicks since all the information are stored on GPU. So, probably, some hybrid approach when you have thousands clickable meshes at the specific coordinates near the camera and compute shader working for the rest of them (distant objects) may be applied here. 3) For realtime terrain generation - right now it's pretty much limited. We are working on new terrain that would be much easier to setup for your use-case (we plan to provide a working version in the 2.8 SDK update). Right now you can check SDK Browser -> Samples -> UnigineScript -> Objects -> terrain_global_00 sample. 4) Regarding the sun texture - it's not completely clear what do you mean by that. Do you want to model star surface in a real scale and apply some texture on it? 5) There are already some merge options available on FBX Import, you need just to select few checkboxes (Merge Static Meshes) and your model will be imported as a single mesh with multiple surfaces. However, that's not often required since real geometry trees are only visible on very close distance to the camera. For the far views you need to use imposters to gain some performance. Thanks! How to submit a good bug report --- FTP server for test scenes and user uploads: ftp://files.unigine.com user: upload password: 6xYkd6vLYWjpW6SN Link to comment
werner.poetzelberger Posted February 4, 2019 Share Posted February 4, 2019 (edited) Seems all possible to me. As there are many ways to do things, you should first define your needs more precisely, and then investigate the methods. You can be creative in finding the right solution and might be surprised what you will find. Edited February 4, 2019 by werner.poetzelberger Link to comment
mark.pizzolatto Posted February 4, 2019 Author Share Posted February 4, 2019 (edited) Greetings: @silent Thank you, that is part of what my research was pointing to BUT since I am new to programming with graphics was not 100% sure. for 4) the current method I am using, well trying to get working is: mesh is a plain primitive sphere (generated by the engine) then apply a surface material, in this case a star surface - i.e. then apply some sort of emission material (I have a emission material I am happy with) with it. Then if say the star is blue, this texture turns blueish and appears to emit a "blue" light. I am guessing like 1), I will need to delve into shaders for this. @werner.poetzelberger Yeah coding is awesome in that way :) - I have been working on this project for a little while know (as a side hobby and holding the info really close, revealing as little as possible...). Mainly trying to get the math to work out. I have done quite a bit in the web and console type programs. However, graphical programming is still new to me and trying to figure it out along with terms and such. And actually the questions are for several project ideas that I have. Thank you, Mark Edited February 4, 2019 by mark.pizzolatto Link to comment
silent Posted February 5, 2019 Share Posted February 5, 2019 Hi Mark, For that task I guess you can use just a regular mesh_base material. It's already supports emission, albedo texture and albedo multiplier by color. You just need to generate a proper UV map to texture being correctly mapped on a surface. Thanks! How to submit a good bug report --- FTP server for test scenes and user uploads: ftp://files.unigine.com user: upload password: 6xYkd6vLYWjpW6SN Link to comment
Recommended Posts