Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. We have updated the language to the Editor Terms based on feedback from our employees and community. Learn more.
    Dismiss Notice
  3. Join us on November 16th, 2023, between 1 pm and 9 pm CET for Ask the Experts Online on Discord and on Unity Discussions.
    Dismiss Notice

Is Unity 5 for me?!

Discussion in 'Editor & General Support' started by culeaalex, Jul 11, 2015.

  1. culeaalex

    culeaalex

    Joined:
    Jul 11, 2015
    Posts:
    6
    Hy,

    I am trying to figure out if Unity 5 is what I need to use for my project. I want to create a 3D viewer and customizer.
    I want the software to be browser based (WebGL when possible, Unity Player when not) and mobile ready (WebGL when will be supported, and later standalone iOS / Android / Windows app).
    So for this I need to be able to:
    - import any fbx or unity asset that was uploaded in the software and view it
    - import any external Material (i presume a unity asset) and apply it to a Mesh
    - import any external Texture and apply it to a Material
    - create from script a custom object (ex: L shaped planes, curved planes) and apply materials to them
    - hide/show/move children of an object

    I have imported an object from 3D Studio Max and tried to change the material texture of a child but could not do it. The tutorials are not helping at all and are very ambiguous.
    I know JavaScript and my other options is three.js
     
  2. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    If you're talking about importing fbx at run time with WebGL then Unity has a grand total of nothing that can help you. But then, nothing else does either. This requires you parse FBX files yourself (regardless of engine you use to my knowledge).
     
  3. culeaalex

    culeaalex

    Joined:
    Jul 11, 2015
    Posts:
    6
    From what I understand I can create assets that I can save on servers and then import them via link (WWW class). The idea is to have a list of hundred of items on a server, select one, load it in the software and from there be able to change different parts of it.
    I do not want to create an online viewer for 3d objects. We are gonna use only 3D objects (assets) that we make (in 3D Studio Max or Maya or even Unity if I go with Unity).
     
  4. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    You can do that fine, yes by creating asset bundles. Bundles can be downloaded or used as DLC and Unity can access all the resources within each bundle as if they were included as part of the unity build. But I am not clear on the cross platform ramifications of the process so you would need to seek further advice.
     
  5. culeaalex

    culeaalex

    Joined:
    Jul 11, 2015
    Posts:
    6
  6. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    This isn't a quick decision. The right way is to evaluate it with prototypes. If you have to make a quick decision, go with what you already know. This is the best advice I can give.
     
  7. culeaalex

    culeaalex

    Joined:
    Jul 11, 2015
    Posts:
    6
    This is not a quick decision. The idea is that Unity 5 can help me deliver on any device! Big differences between three.js and Unity 5 are not that many. They both work with javascript code, and do 3D render. The problem is with Unity 5 tutorials. And my mind is set on Unity 5, so I am looking for tutorials and snipet codes that teach me everything I need to know. But if Unity 5 scripting tutorials are scares and cannot find them for what I need, I cannot go with Unity 5 as I have a deadline to meet.
     
  8. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Unity 5 does not work with javascript code. It uses a variant of code which is a bastard of C# and Javascript. It's not the javascript you know. I would recommend C# when using Unity. Unityscript or what it calls Javascript is just a generic java-flavoured language which is not compatible with web javascript and you will find many syntax differences.

    If you want to read external resources at runtime I recommend googling asset bundles or checking the manual.
     
  9. mdrotar

    mdrotar

    Joined:
    Aug 26, 2013
    Posts:
    377
    Watch out with Asset Bundles. They are not well suited for mobile right now. You'll have to decide between it taking up too much space or taking too long to load. Another headache is that you need to build and maintain separate asset bundles for each platform. So one for WebGL, one for Android, and one for iOS.

    And since you mentioned a deadline, understand that WebGL is still in "preview". It is not ready for production use yet and may not be ready before your deadline.
     
  10. culeaalex

    culeaalex

    Joined:
    Jul 11, 2015
    Posts:
    6
    @mdrotar : the WebGL is a very nice feature that is not a must. The idea is that if WebGL is supported in browser, then the WebGL version will run, otherwise will load the Unity plugin. The first release will not have Android and iOS app, those will come after the beta, so we will get the hang of it by then.
    @hippocoder : Unity script is more ok for me than C# (for now), so it's ok.