Search Unity

Project Tiny preview-0.16.1 (C#) available, and upcoming changes

Discussion in 'Project Tiny' started by JC-Cimetiere, Jul 11, 2019.

Thread Status:
Not open for further replies.
  1. JC-Cimetiere

    JC-Cimetiere

    Unity Technologies

    Joined:
    May 8, 2014
    Posts:
    39
    October 3/2019 Update: please read the latest on Project Tiny
    ------------
    A new Preview is available, including a few bug fixes. This update does not have any major new features.
    You’ll find Project Tiny in the Package Manager when “Preview Package” option is activated.

    To get started follow the detailed instructions in our previous post.



    You may need to restart Unity after installing Project Tiny package and samples to open a project ( .project file). When importing the package and samples, you might see (and ignore) Warning messages in the console like: “Assembly for Assembly Definition File '[...]/Unity.Tiny.Thread.Native.asmdef' will not be compiled, because it has no scripts associated with it. [...])"

    We’ve updated a couple samples, HelloWord getting a proper design pass and Browser Interop getting font issues fixed. We’ve improved the “Open DOTS C# Project”, generating the solution faster, and fixed a few more issues on the editor side. See the Change log for more details.

    Thanks to all of you who jumped on our first preview and gave valuable feedback.


    What’s coming next?
    For the next iterations we are planning to bring significant changes to the scene authoring side.
    We’ve heard your feedback on the current authoring experience: while similar to the classic way in Unity, it’s different enough that it requires a significant relearn and prevents from directly re-using existing content (like an already designed 2D scene).
    The Unity Editor uses Game Objects as the format to represent a scene and its content. In current preview of Project Tiny, the Editor switches to DOTS Mode which uses Entities as the format to represent a scene.

    A “new/old” authoring experience for Project Tiny
    We’ve decided to change this approach and align the authoring experience on the Game Objects workflow, giving users familiar tools, while Unity will do a conversion to Entities in the background, so the runtime outcome remains “pure” DOTS.
    This conversion pipeline has been built initially to enable the hybrid mode (used to build the Megacity demo), and we are now confident that we can generalize this approach for all authoring needs.
    As a result, authoring content in Project Tiny will rely on the same Game Object concepts you currently use in “classic” Unity. Of course we will need to filter out/restrict what’s available based on the target, so you don’t accidentally add a Game Object or use a feature that is not yet supported in Project Tiny.
    We will post updates on this forum about when the next preview is coming.

    What about the C# scripting side?
    On the C# scripting side, Project Tiny will stick to using “pure” DOTS, relying exclusively on the Entity Component System (ECS), the Job System, and soon the Burst Compiler, with the goal to deliver a small, light and fast runtime experience. So, still no more MonoBehavior and just Entities, Components and Systems. We are working on developing more samples and guidance for ECS in general.

    What’s going to happen with content I’ve authored in current preview of Project Tiny?
    Unfortunately, you will have to rework that part, and redo it with Game Objects.
     
    Last edited: Oct 3, 2019
    TimmyCom, juelle, Maras and 4 others like this.
  2. yossi_horowitz_artie

    yossi_horowitz_artie

    Joined:
    Jan 30, 2019
    Posts:
    62
    Thanks for the update!

    To be clear -- does this mean that the idea of a pure DOTS editor is going away (forever?) and we'll need to write conversion scripts for all ECS components from MonoBehaviours if we want to be able to use them in the editor, as with the current workflow for non-Tiny ECS? (I hope not!)
     
    JoNax97 and GliderGuy like this.
  3. sniffle63

    sniffle63

    Joined:
    Aug 31, 2013
    Posts:
    159
    Always good to see new updates! Great work! Glad that generating our Tiny projects is getting easier!

    Interesting going to a gameobject workflow, I was quite enjoying the Entity workflow. Although im sure it will be worth it in the end! Id love to hear a little more about how this is going to work exactly (specifically with calling the components in scripts(more specifically how in Tiny transforms are called translations))

    Will this mean we will be able to do editor scripting in Unity Tiny sooner than i was originally expecting it to work?

    Also im assuming this is going to increase your guys workflow quite alot with not having to create all new components for tiny specifically. With that being said, is tilemaps (and other features) going to find its way back into Project Tiny faster do to this change?
     
    GliderGuy likes this.
  4. Thaina

    Thaina

    Joined:
    Jul 13, 2012
    Posts:
    260
    Still no 3D....
     
    leoln2000 and yupengfei like this.
  5. kfconeone

    kfconeone

    Joined:
    Oct 3, 2013
    Posts:
    7
    Will DOTS Mode be used on the normal project(Non-Tiny) in the future? just curious.
     
  6. badiba

    badiba

    Joined:
    Apr 9, 2018
    Posts:
    8
    I'm having this error after updating to new version.

    Code (CSharp):
    1. error: Sequence contains no matching element (System.InvalidOperationException)
    2.   at System.Linq.Enumerable.First
    3.   at DotsConfigs+<>c.<.cctor>b__13_1 in C:/Unity/tinygit/Library/PackageCache/com.unity.tiny@0.16.1-preview/DotsPlayer/bee~/BuildProgramSources/DotsConfigs.cs(49)
    4.   at System.Lazy`1[T].CreateValue
    5.   at System.Lazy`1[T].LazyInitValue
    6.   at Il2Cpp+<>c.<.cctor>b__35_1 in C:/Unity/tinygit/Library/PackageCache/com.unity.tiny@0.16.1-preview/DotsPlayer/bee~/BuildProgramSources/Il2Cpp.bee.cs(70)
    7.   at System.Lazy`1[T].CreateValue
    8.   at System.Lazy`1[T].LazyInitValue
    9.   at DotsRuntimeCSharpProgram.Construct in C:/Unity/tinygit/Library/PackageCache/com.unity.tiny@0.16.1-preview/DotsPlayer/bee~/BuildProgramSources/DotsRuntimeCSharpProgram.cs(67)
    10.   at DotsRuntimeCSharpProgram..ctor in C:/Unity/tinygit/Library/PackageCache/com.unity.tiny@0.16.1-preview/DotsPlayer/bee~/BuildProgramSources/DotsRuntimeCSharpProgram.cs(56)
    11.   at BuildProgram.Main
    12.   at System.RuntimeMethodHandle.InvokeMethod
    13.   at Bee.StandaloneBeeDriver+<>c.<CreateBuildGraph>b__42_0
    14.   at Bee.StandaloneBeeDriver.RunBuildProgramInBeeEnvironment
    15.   at Bee.StandaloneBeeDriver.CreateBuildGraph
    16.   at Bee.StandaloneBeeDriver.BuildMain
    17.   at Bee.StandaloneBeeDriver.Main
    18. [E] DAG generator driver failed: "C:\Unity\tinygit\Library\PackageCache\com.unity.tiny@0.16.1-preview\DotsPlayer\bee~\bee.exe" build --beemode=ToCreateBuildGraph --commandlinerequest=get-editor-tools --commandlinerequest=story-windows-dotnet-release --root-artifacts-path=artifacts --bee-driver-buildprogramroot=.
    19. *** Tundra build failed to setup error (0.70 seconds), 0 items updated
     
    romiohasan likes this.
  7. Baste

    Baste

    Joined:
    Jan 24, 2013
    Posts:
    4,283
    Yiiiiikes.

    I've been avoiding dipping my foot into the DOTS stuff exactly because the hybrid mode and auto-conversion seem like insane, temporary hacks "just to get something working". The pure dots view you had in 0.15 was what made me want to try it in the first place. It's a complete solution where I understand what's going on.

    The megacity approach seems to have an absurd amount of black magic going on. I probably won't ever be comfortable building games in this "lets create objects in one abstraction in the editor and then magic magic now we're in a different abstraction at runtime" way.

    Is the dots editor coming back once it's better, or have you locked into DOTS forever being tied to GameObject in a very confusing way?
     
  8. romiohasan

    romiohasan

    Joined:
    Apr 8, 2019
    Posts:
    13
    I have also faced the same issue and now waiting for a solution from here.
     
  9. Maras

    Maras

    Joined:
    Dec 11, 2012
    Posts:
    49
    I have to agree with Baste, abstracting entities with GameObjects seems wrong. From my pov Entities/EntityGroups approach was not too hard to get into.
     
    Last edited: Jul 12, 2019
    JoNax97 likes this.
  10. elliotc-unity

    elliotc-unity

    Unity Technologies

    Joined:
    Nov 5, 2015
    Posts:
    3
    This is a poor error message on our part, which we will be fixing up in future releases so you can tell what went wrong. In general this is what happens when we cannot find some necessary installed tools to build the minimum set of configs; for example, we know of one case where it happened when only the very most recent version of VS 2019 was installed (because of a bug in the detection code), or when no valid Windows SDK was installed.

    That said, it's odd that you hit this when you upgraded from the previous version of the package; did you also upgrade anything else on the machine perhaps?
     
    Manny_bit likes this.
  11. etienne_unity

    etienne_unity

    Unity Technologies

    Joined:
    Aug 31, 2017
    Posts:
    54
    Hi @Baste

    The same team that worked on the Tiny editor will take care of reducing the magic magic parts of the hybrid workflow.

    What hurts the Tiny editor is the lack of proper support for Prefabs and Animation. We're working on this, but these fundamental building blocks will take time to complete.

    Meanwhile, we still want people to create games with Tiny, and that's why we're switching to the same hybrid workflow.

    Looking forward to your feedback once we land the first iteration!
     
    Manny_bit and optimise like this.
  12. Joachim_Ante

    Joachim_Ante

    Unity Technologies

    Joined:
    Mar 16, 2005
    Posts:
    4,716
    We certainly still have some robustness issues. And as etienne said his team is focusing on visualizing the conversion process to make it more understandable. Showing the runtime data live, Showing what didn't get converted etc. And making it so you can directly attach a IComponentData to a game object without having to writing your own wrapper / proxy thing. Those are clearly problems we have today, and we are working on addressing those.

    We certainly think that the concept of going through a clear pipeline that converts data from an authoring format to a runtime format is incredibly important and has been lacking in unity for a long time.

    At edit time you want to move all your objects in a hierarchy. But if some objects are known to be static, why can't we just flatten it out to a matrix and get rid of the hierarchy?
    Why can't I have a character with 500 bones represented as game objects with great in scene workflows, but then that character can be turned into a single entity for the runtime.
    Why can't I have a simple way of defining procedural content generation at authoring time, where i change some parameters and as a result generate a bunch of entities. Like for building, city, vegetation generation.

    Lastly we think there is significant value in being able to ingest existing content as is and just have the conversion pipeline convert it into the optimal entity runtime format.

    Curious if there is anything specific that makes you feel like the conversion flow is a hack?
     
    Last edited: Jul 12, 2019
  13. Joachim_Ante

    Joachim_Ante

    Unity Technologies

    Joined:
    Mar 16, 2005
    Posts:
    4,716
    It doesn't change anything from the game code perspective. This is only about the authoring tooling. Specifically this is about introducing the concept of converting data from one format to another. Editor format vs Runtime format.
     
    Last edited: Jul 12, 2019
    Maras and eizenhorn like this.
  14. badiba

    badiba

    Joined:
    Apr 9, 2018
    Posts:
    8
    No I didn't. I just upgraded the Project Tiny.

    Also just to be sure, I created a new project. Then I installed version 0.16.1 of Project Tiny directly and got the same error. Then I downgraded it to 0.15.3 and I could get a build.
     
  15. elliotc-unity

    elliotc-unity

    Unity Technologies

    Joined:
    Nov 5, 2015
    Posts:
    3
    Ok, thanks, will investigate.
     
    Manny_bit likes this.
  16. yossi_horowitz_artie

    yossi_horowitz_artie

    Joined:
    Jan 30, 2019
    Posts:
    62
    My off-the-cuff concerns so far:
    - It will require that extra scaffolding code be written for each ECS component that we want to use in the editor. (Unless there will be an auto-generated editor-time-only MonoBehaviour for ECS components as part of this infrastructure?)
    - It will discourage ECS-like thinking at author time. It would be nice if it were possible to visualize, by means of the Hiearchy Window and Inspector, what your data is actually going to look like without having to press play.
     
    Seb-1814, sniffle63 and GliderGuy like this.
  17. yossi_horowitz_artie

    yossi_horowitz_artie

    Joined:
    Jan 30, 2019
    Posts:
    62
    We're using some super-duper unsupported techniques at the moment, but my team is in the process of integrating Raylib (https://www.raylib.com/) into Tiny for 3D support, and it's coming along slowly, but very nicely.
     
    DaniMoreno, Thaina and sniffle63 like this.
  18. eizenhorn

    eizenhorn

    Joined:
    Oct 17, 2016
    Posts:
    1,516
    Completely disagree. Conversion workflow is all against of magic. You authorize it by yourself, you decide how convert data from edit format to runtime format, you decide how it looks in editor, at the same time you can use all old good MB editor stuff.
     
    DreamingImLatios likes this.
  19. Maras

    Maras

    Joined:
    Dec 11, 2012
    Posts:
    49
    Thanks for the answer. I just do not like abstracting something just so it does not look intimidating. But the way you explained it in the previous answer makes sense.
     
  20. Joachim_Ante

    Joachim_Ante

    Unity Technologies

    Joined:
    Mar 16, 2005
    Posts:
    4,716
    Agree. In 19.3 we ship all changes to support this. Specifically we have the ability to postprocess IL after C# compilation in a scalable and performant way. This lets us efficiently generate a monobehaviour like this automatically:
    Code (CSharp):
    1.     [CreateAuthoringComponent]
    2.     public struct Enemy : IComponentData
    3.     {
    4.         [Tooltip("You need more than 0 or else you die....")]
    5.         public int Health;
    6.  
    7.         [Range(2, 10)] public float Mana;
    8.        
    9.         public Maybe Maybe;
    10.         public Complex Complex;
    11.  
    12.         public static Enemy Default => new Enemy() {Health = 12, Mana = 13, Maybe = Maybe.No};
    13.  
    14.         [RestrictAuthoringInputTo(typeof(Light))]
    15.         public Entity LightsourceToPulseWhenAlmostDead;
    16.     }
    There are still situations where you want to explicitly create the authoring component, when things get more complex and runtime & authoring data becomes more and more distant from each other simply because you are optimizing runtime perf & authoring simplicity for designers. And the goals of each one are often not well aligned. Which is why this process of everything going through conversion is so powerful.

    But naturally, simple should be simple. Hence the above by default.

    Yes. And thats exactly what we are working towards around Unite timeframe.
     
  21. GliderGuy

    GliderGuy

    Joined:
    Dec 14, 2018
    Posts:
    29
    After reading through this thread I'm a little less concerned about the Pure Entities to GameObjects plus Conversion change... But i really don't like the weird jargon when it comes to referring to these converted-to-entities-at-runtime "GameObjects". Because really, are they actually GameObjects at this point? Heck they don't even exist within the game anymore!
    They're more of "Hybrid Entity Blueprints" now, so i feel like we should change the jargon to reflect that (even if it comes at the expense of increasing the entry barrier slightly for newer people since they have to refer to them as something new). Simply calling them EntityObjects would be fine with me, although there are probably better names. Like maybe HybridObject? HybridEntityObject? ObjectEntity? What about Will-Be-Converted-Soon-TM-Object? Is that too wordy?

    Anyways just thought i should throw in my two cents about the subject.

    - Also, does anyone know how to reference another soon-to-be-converted GameObject's created entity within the editor? Like... Without getting errors? Since the GameObject gets destroyed, anytime you reference it the editor gets mad -- so you can't do that. And the entity created is pretty arbitrary too, you don't know if it will be Entity 1 or Entity 2, and hardcoding in a "reference" to Entity 1 would make me cry... So is there like auto conversion of a GameObject reference to Entity "reference" or something when the GameObject gets converted to an entity?
     
    Last edited: Jul 13, 2019
  22. DreamingImLatios

    DreamingImLatios

    Joined:
    Jun 3, 2017
    Posts:
    498
    conversionSystem.GetPrimaryEntity
     
    GliderGuy likes this.
  23. JJJohan

    JJJohan

    Joined:
    Mar 18, 2016
    Posts:
    206
    Is it always going to be the intention to limit the exposed .NET libraries that are available? I ask because I find the idea of Unity TIny interesting in that it has the potential of starting our non-game web application faster when we only really want to use Unity's API for basic rendering but still have access to third party libraries for doing runtime processing of different data formats. I get there is some effort to "fine-tune" this but ultimately is the end-goal still going to be a limited .NET Standard 2.0 subset that would make using off-the-shelf .NET libraries impossible?
     
  24. Thaina

    Thaina

    Joined:
    Jul 13, 2012
    Posts:
    260
    We could just drop prefab I think

    It's my wish all along that we should have a way to make prefab be the same as edittime and runtime. But the way I have came up with is something like edittime data orient UIElements. It was getting away from being prefab. It become something that dynamic generating things inside both prefab view, editor view, and also in playmode

    And I think this should be better approach for unity. Everything should be data orient and react to data. Then we just serialize the data instead of prefab. And so prefab should be legacy
     
  25. Baste

    Baste

    Joined:
    Jan 24, 2013
    Posts:
    4,283
    This all sounds great!

    This is great for performance, and for sure something we'd want for builds.
    But when debugging the game - ie. playing from the editor - we really need the edit time hierarchy to understand what we're looking at. One of the biggest performance killers in GameObject world is deep transform hierarchies of essentially folder gameobjects. Those are 100% necessary in order to move related objects together, and to give meaningful names to things.

    We have tried, for performance reasons, to flatten those hierarchies when we go into play mode, and quickly found out that we lost a ton of information about what we were looking at. It becomes way harder to link what you're seeing in-game back to what's there at edit-time when the hierarchies have changed. So we switched to only do the flattening at build-time.
    In short, when everything's just a single blob of data, it runs faster, but our ability to reason about it at runtime is reduced.

    It doesn't feel like a hack. I just had assumed it was a hack that you put in place until you had the pure ECS editor ready to go. Color me surprised when you ship a pure ECS editor and then ditch it in less than a month.


    I think the best thing in Unity - it's killer feature - is the ability to click a thing in the scene view in play mode, in order to see what data is attached to it, and what behaviours are running on it in the inspector.
    I realize that tying together data and behaviour is slow, and DOTS is all about splitting those two apart, but boy will it be hard to debug anything if I can't click on a thing to see what's running on it.

    So what seems hacky is that you've thrown out what I consider the best part of Unity on the road to DOTS. Take the boid demo. I can select the shark, but I have to find it in the hierarchy, I can't click it in the scene view. I can't select an individual fish without going through the entity debugger, and there's no way for me to link the fish there to the fish in the scene.

    What the Project Tiny preview has is the ability to click an entity in the scene view. That was one of the main thing I felt was missing from entities, and now it's going away again.
     
    Last edited: Jul 14, 2019
  26. sniffle63

    sniffle63

    Joined:
    Aug 31, 2013
    Posts:
    159
    When i upgraded my project to this new release, every time i click "open DOTS C# project" instead of reloading my current IDE, it opens a completely new one, and my newly created scripts wont work correctly. I had also just switched from jetbrains back to VS because my license expired, so it may be VS specific, because when i downgraded back to the last version it continued, but at least after i downgraded when it opened the new IDE the script were usable and i just had to close the previously opened IDE
     
  27. U_Guendeli

    U_Guendeli

    Joined:
    Dec 12, 2018
    Posts:
    6
    Coming from Entitas background, i don't really mind losing the editor flexibility.

    About DOTS:
    • Is is possible to Add/Remove components in runtime, like entity.AddMyComponent(A,B,C) ?
    • What would be an equivalent for Reactive Systems. systems that reacts to an entity being added once instead of looping constantly through them ?
    • Can we control the script execution order of systems ?

    the samples are running perfectly and runs on both webasm and asmjs on a low end phone.
     
  28. DeveloperTechno

    DeveloperTechno

    Joined:
    Apr 30, 2019
    Posts:
    2
    I was able to execute the project before, but suddenly I could not execute the project.
    Even the HelloWorld project is impossible.
    Widows SDK is the latest version, and Jobs and Burst are also the latest version.
    The symptoms occur during a build after pressing the run button.
    The editor freezes when the progress message is "Running bee ...".
    This symptom occurs with any execution method.
    I do not know the solution method. help me.
    (I'm not good at English.Therefore, I used Google translation.)
    (There may be incorrect sentences. I'm sorry.)
     
    Last edited: Jul 15, 2019
  29. v_vuk

    v_vuk

    Unity Technologies

    Joined:
    Jul 11, 2017
    Posts:
    19
    The DOTS Editor hasn't been ditched, just put on hold -- it's still where we want to get to. On the way there we realized we would need to introduce "authoring components", because similar to your experience, the best runtime performance is usually not the best or most pleasant authoring experience. We already have those authoring components on the GameObject side, so we can reuse them. Transforms are a really good example; you want to edit with deep hierarchies, for organization or ease of use, but at runtime you want much of that hierarchy to go away.

    On this path we can get to a complete package of features + authoring in a usable state sooner. We also get to closer alignment with the goals and experience of Project Tiny and overall DOTS. Eventually we'll likely want to introduce pure ECS authoring components and have a pure DOTS editing experience, but we don't have to block actually creating content until then.

    We absolutely want you to click a thing in the scene view in play mode, see the runtime entities, and see the original authoring gameobject. We also want you to be able to see how that gameobject was converted into the runtime entity (like in the transform example: if your runtime entity is static, and you didn't expect it to be, you should be able to see which conversion system made the decision to make it static). Same with being able to see the authoring hierarchy vs. runtime set of entities (or runtime transform hierarchy), or to select things that only have an entity representation. The goal is to provide complete visibility into what's going on.

    WThe biggest challenge of this GameObject authoring path is making the pipeline visible and understandable, both at authoring and at runtime -- and that's the problem that the team working on the authoring workflows is focused on solving.
     
    Laicasaane, optimise, Baste and 3 others like this.
  30. v_vuk

    v_vuk

    Unity Technologies

    Joined:
    Jul 11, 2017
    Posts:
    19
    Yep - the operations are on the EntityManager though, not on the Entity directly, so you would do something like EntityManager.AddComponentData(entity, new A { ... });

    Yes, through system state components. Some documentation is here: https://docs.unity3d.com/Packages/com.unity.entities@0.0/manual/system_state_components.html

    Yes, through UpdateBefore/UpdateAfter and a few other attributes. See https://docs.unity3d.com/Packages/com.unity.entities@0.0/manual/system_update_order.html for more information.
     
    Manny_bit and U_Guendeli like this.
  31. Maras

    Maras

    Joined:
    Dec 11, 2012
    Posts:
    49
    In that case it sounds great! :)

    Can you please tell us when do you plan to publish the roadmap?
     
  32. vincismurf

    vincismurf

    Joined:
    Feb 28, 2013
    Posts:
    191
    Still not building =(

    Code (CSharp):
    1. Build failed. Open D:\YOU\beta9_tiny\Library\DotsRuntimeBuild\build.log for more details.
    2. [     0s] Build frontend of artifacts\buildprogram\buildprogram_buildprogram.dag ran (no suitable previous build dag file)
    3. [1/6  0s] CSProject buildprogram-build.gen.csproj
    4. [2/6  0s] Download and unpack artifacts/buildprogrambuildprogram/Stevedore/7za-win-x64/.StevedoreVersion (+1 other)
    5. [3/6  1s] Download and unpack artifacts/buildprogrambuildprogram/Stevedore/referenceassemblies_v46/.StevedoreVersion (+1 other)
    6. [4/6  2s] Download and unpack artifacts/buildprogrambuildprogram/Stevedore/roslyn-csc-win64/.StevedoreVersion (+1 other)
    7. [5/6  1s] Csc artifacts/buildprogram/buildprogram_buildprogram.exe (+2 others)
    8. [     5s] Build frontend of artifacts\buildprogram\tundra_buildprogram.dag ran (no suitable previous build dag file)
    9. [ 1/13  0s] WriteResponseFile artifacts/rsp/1008532451738831585.rsp
    10. [ 2/13  0s] WriteResponseFile artifacts/rsp/16678227308262555357.rsp
    11. [ 3/13  0s] CSProject D:/YOU/beta9_tiny/Library/PackageCache/com.unity.tiny@0.16.1-preview/DotsPlayer/bee~/BuildProgramBuildProgramSources/buildprogrambuildprogram.gen.csproj
    12. [ 4/13  0s] CSProject D:/YOU/beta9_tiny/Library/DotsRuntimeBuild/buildprogram.gen.csproj
    13. [ 5/13  0s] VisualStudioSolution build.gen.sln
    14. [ 6/13  0s] CopyTool artifacts/buildprogram/bee.exe
    15. [ 7/13  0s] CopyTool artifacts/buildprogrambuildprogram.exe/Release/bee.exe
    16. [ 8/13  0s] Download and unpack artifacts/Stevedore/7za-win-x64/.StevedoreVersion (+1 other)
    17. [ 9/13  0s] Download and unpack artifacts/Stevedore/referenceassemblies_v471/.StevedoreVersion (+1 other)
    18. [10/13  2s] Download and unpack artifacts/Stevedore/roslyn-csc-win64/.StevedoreVersion (+1 other)
    19. [11/13  1s] Csc artifacts/buildprogrambuildprogram.exe/Release/buildprogrambuildprogram.exe (+2 others)
    20. [12/13  1s] Csc artifacts/buildprogram/buildprogram.exe (+2 others)
    21. error: Error reading JObject from JsonReader. Path '', line 1, position 390. (Newtonsoft.Json.JsonReaderException)
    22.   at Newtonsoft.Json.Linq.JObject.Load
    23.   at Newtonsoft.Json.Linq.JObject.Parse
    24.   at Bee.Stevedore.Program.FileList.ParseFromString
    25.   at Bee.Stevedore.Program.FileList.ParseFromString
    26.   at Bee.Stevedore.StevedoreArtifact.GetFileList
    27.   at EditorToolsBuildProgram.SetupGetEditorToolsFromStevedore in D:/YOU/beta9_tiny/Library/PackageCache/com.unity.tiny@0.16.1-preview/DotsPlayer/bee~/BuildProgramSources/EditorToolsBuildProgram.cs(144)
    28.   at BuildProgram.Main in D:/YOU/beta9_tiny/Library/PackageCache/com.unity.tiny@0.16.1-preview/DotsPlayer/bee~/BuildProgramSources/BuildProgram.bee.cs(167)
    29. [E] DAG generator driver failed: "D:\YOU\beta9_tiny\Library\PackageCache\com.unity.tiny@0.16.1-preview\DotsPlayer\bee~\bee.exe" build --beemode=ToCreateBuildGraph --commandlinerequest=get-editor-tools --commandlinerequest=helloworld-windows-dotnet-debug --root-artifacts-path=artifacts --bee-driver-buildprogramroot=.
    30. *** Tundra build failed to setup error (14.40 seconds), 0 items updated
    31.  
    32. UnityEngine.Debug:LogError(Object)
    33. Unity.Debug:LogError(Object) (at Library/PackageCache/com.unity.entities@0.0.12-preview.33/Unity.Entities/Stubs/Unity/Debug.cs:10)
    34. Unity.Editor.Build.BuildStepRunBee:Run(BuildContext) (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor.Build/BuildStepRunBee.cs:83)
    35. Unity.Editor.Build.BuildPipeline:RunBuildSteps(IReadOnlyList`1, BuildContext) (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor.Build/BuildPipeline.cs:137)
    36. Unity.Editor.Build.BuildPipeline:Build(BuildSettings) (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor.Build/BuildPipeline.cs:110)
    37. Unity.Editor.Application:Build() (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor/Application.cs:133)
    38. Unity.Editor.Application:BuildAndRun() (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor/Application.cs:144)
    39. Unity.Editor.Modes.PlayBar:PlayCommandHandler(CommandExecuteContext) (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor.Modes/PlayBar.cs:15)
    40. UnityEditor.CommandService:Execute(String)
    41. Unity.Editor.Modes.PlayBar:DrawPlayBar(CommandExecuteContext) (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor.Modes/PlayBar.cs:80)
    42. UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
    43.  
    Code (CSharp):
    1. Build failed. Open D:\YOU\beta9_tiny\Library\DotsRuntimeBuild\build.log for more details.
    2. [     0s] Build frontend of artifacts\buildprogram\tundra_buildprogram.dag ran (folder contents changed: ../PackageCache/com.unity.tiny@0.16.1-preview/DotsPlayer/bee~/BuildProgramBuildProgramSources)
    3. error: Error reading JObject from JsonReader. Path '', line 1, position 390. (Newtonsoft.Json.JsonReaderException)
    4.   at Newtonsoft.Json.Linq.JObject.Load
    5.   at Newtonsoft.Json.Linq.JObject.Parse
    6.   at Bee.Stevedore.Program.FileList.ParseFromString
    7.   at Bee.Stevedore.Program.FileList.ParseFromString
    8.   at Bee.Stevedore.StevedoreArtifact.GetFileList
    9.   at EditorToolsBuildProgram.SetupGetEditorToolsFromStevedore in D:/YOU/beta9_tiny/Library/PackageCache/com.unity.tiny@0.16.1-preview/DotsPlayer/bee~/BuildProgramSources/EditorToolsBuildProgram.cs(144)
    10.   at BuildProgram.Main in D:/YOU/beta9_tiny/Library/PackageCache/com.unity.tiny@0.16.1-preview/DotsPlayer/bee~/BuildProgramSources/BuildProgram.bee.cs(167)
    11. [E] DAG generator driver failed: "D:\YOU\beta9_tiny\Library\PackageCache\com.unity.tiny@0.16.1-preview\DotsPlayer\bee~\bee.exe" build --beemode=ToCreateBuildGraph --commandlinerequest=get-editor-tools --commandlinerequest=helloworld-windows-dotnet-debug --root-artifacts-path=artifacts --bee-driver-buildprogramroot=.
    12. *** Tundra build failed to setup error (3.88 seconds), 0 items updated
    13.  
    14. UnityEngine.Debug:LogError(Object)
    15. Unity.Debug:LogError(Object) (at Library/PackageCache/com.unity.entities@0.0.12-preview.33/Unity.Entities/Stubs/Unity/Debug.cs:10)
    16. Unity.Editor.Build.BuildStepRunBee:Run(BuildContext) (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor.Build/BuildStepRunBee.cs:83)
    17. Unity.Editor.Build.BuildPipeline:RunBuildSteps(IReadOnlyList`1, BuildContext) (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor.Build/BuildPipeline.cs:137)
    18. Unity.Editor.Build.BuildPipeline:Build(BuildSettings) (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor.Build/BuildPipeline.cs:110)
    19. Unity.Editor.Application:Build() (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor/Application.cs:133)
    20. Unity.Editor.Application:BuildAndRun() (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor/Application.cs:144)
    21. Unity.Editor.Modes.PlayBar:PlayCommandHandler(CommandExecuteContext) (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor.Modes/PlayBar.cs:15)
    22. UnityEditor.CommandService:Execute(String)
    23. Unity.Editor.Modes.PlayBar:DrawPlayBar(CommandExecuteContext) (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor.Modes/PlayBar.cs:80)
    24. UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
    25.  
     
  33. Puschie

    Puschie

    Joined:
    Feb 16, 2013
    Posts:
    4
    Code (CSharp):
    1. [     0s] Build frontend of artifacts\buildprogram\buildprogram_buildprogram.dag ran (build file timestamp changed: bee.config)
    2. [     0s] Delete 5 artifact files that are no longer in use. (like artifacts\Bee.CSharpSupport\referenceassemblies\buildprogram_buildprogram.exe\1088064819024506472.dll)
    3. [1/6  0s] CSProject buildprogram-build.gen.csproj
    4. [2/6  0s] Download and unpack artifacts/buildprogrambuildprogram/Stevedore/7za-win-x64/.StevedoreVersion (+1 other)
    5. [3/6  0s] Download and unpack artifacts/buildprogrambuildprogram/Stevedore/roslyn-csc-win64/.StevedoreVersion (+1 other)
    6. [4/6  0s] Download and unpack artifacts/buildprogrambuildprogram/Stevedore/referenceassemblies_v46/.StevedoreVersion (+1 other)
    7. [5/6  0s] Csc artifacts/buildprogram/buildprogram_buildprogram.exe (+2 others)
    8. [     1s] Build frontend of artifacts\buildprogram\tundra_buildprogram.dag ran (build file timestamp changed: ../PackageCache/com.unity.tiny@0.15.3-preview/DotsPlayer/bee~/BuildProgramBuildProgramSources/BuildProgramBuildProgram.cs)
    9. [       0s] Delete 18 artifact files that are no longer in use. (like C:\Space\Projects\NewTinyTest\Library\PackageCache\com.unity.tiny@0.15.3-preview\DotsPlayer\bee~\BuildProgramBuildProgramSources\buildprogrambuildprogram.gen.csproj)
    10. [ 1/13  0s] WriteResponseFile artifacts/rsp/16678227308262555357.rsp
    11. [ 2/13  0s] WriteResponseFile artifacts/rsp/1008532451738831585.rsp
    12. [ 3/13  0s] CSProject C:/Space/Projects/NewTinyTest/Library/PackageCache/com.unity.tiny@0.16.1-preview/DotsPlayer/bee~/BuildProgramBuildProgramSources/buildprogrambuildprogram.gen.csproj
    13. [ 4/13  0s] CSProject C:/Space/Projects/NewTinyTest/Library/DotsRuntimeBuild/buildprogram.gen.csproj
    14. [ 5/13  0s] VisualStudioSolution build.gen.sln
    15. [ 6/13  0s] CopyTool artifacts/buildprogrambuildprogram.exe/Release/bee.exe
    16. [ 7/13  0s] CopyTool artifacts/buildprogram/bee.exe
    17. [ 8/13  0s] Download and unpack artifacts/Stevedore/7za-win-x64/.StevedoreVersion (+1 other)
    18. [ 9/13  0s] Download and unpack artifacts/Stevedore/referenceassemblies_v471/.StevedoreVersion (+1 other)
    19. [10/13  0s] Download and unpack artifacts/Stevedore/roslyn-csc-win64/.StevedoreVersion (+1 other)
    20. [11/13  0s] Csc artifacts/buildprogrambuildprogram.exe/Release/buildprogrambuildprogram.exe (+2 others)
    21. [12/13  0s] Csc artifacts/buildprogram/buildprogram.exe (+2 others)
    22. error: Sequence contains no matching element (System.InvalidOperationException)
    23.   at System.Linq.Enumerable.First
    24.   at DotsConfigs+<>c.<.cctor>b__13_1 in C:/Space/Projects/NewTinyTest/Library/PackageCache/com.unity.tiny@0.16.1-preview/DotsPlayer/bee~/BuildProgramSources/DotsConfigs.cs(49)
    25.   at System.Lazy`1[T].CreateValue
    26.   at System.Lazy`1[T].LazyInitValue
    27.   at Il2Cpp+<>c.<.cctor>b__35_1 in C:/Space/Projects/NewTinyTest/Library/PackageCache/com.unity.tiny@0.16.1-preview/DotsPlayer/bee~/BuildProgramSources/Il2Cpp.bee.cs(70)
    28.   at System.Lazy`1[T].CreateValue
    29.   at System.Lazy`1[T].LazyInitValue
    30.   at DotsRuntimeCSharpProgram.Construct in C:/Space/Projects/NewTinyTest/Library/PackageCache/com.unity.tiny@0.16.1-preview/DotsPlayer/bee~/BuildProgramSources/DotsRuntimeCSharpProgram.cs(67)
    31.   at DotsRuntimeCSharpProgram..ctor in C:/Space/Projects/NewTinyTest/Library/PackageCache/com.unity.tiny@0.16.1-preview/DotsPlayer/bee~/BuildProgramSources/DotsRuntimeCSharpProgram.cs(56)
    32.   at BuildProgram.Main
    33.   at System.RuntimeMethodHandle.InvokeMethod
    34.   at Bee.StandaloneBeeDriver+<>c.<CreateBuildGraph>b__42_0
    35.   at Bee.StandaloneBeeDriver.RunBuildProgramInBeeEnvironment
    36.   at Bee.StandaloneBeeDriver.CreateBuildGraph
    37.   at Bee.StandaloneBeeDriver.BuildMain
    38.   at Bee.StandaloneBeeDriver.Main
    39. [E] DAG generator driver failed: "C:\Space\Projects\NewTinyTest\Library\PackageCache\com.unity.tiny@0.16.1-preview\DotsPlayer\bee~\bee.exe" build --beemode=ToCreateBuildGraph --commandlinerequest=get-editor-tools --commandlinerequest=testtinyproject-windows-dotnet-debug --root-artifacts-path=artifacts --bee-driver-buildprogramroot=.
    40. *** Tundra build failed to setup error (3.42 seconds), 0 items updated
    41.  
    after restart unity
    Code (csharp):
    1.  
    2. [ 9/13  0s] CSProject C:/Space/Projects/NewTinyTest/Library/PackageCache/com.unity.tiny@0.16.1-preview/DotsPlayer/bee~/BuildProgramBuildProgramSources/buildprogrambuildprogram.gen.csproj
    3. error: Sequence contains no matching element (System.InvalidOperationException)
    4.   at System.Linq.Enumerable.First
    5.   at DotsConfigs+<>c.<.cctor>b__13_1 in C:/Space/Projects/NewTinyTest/Library/PackageCache/com.unity.tiny@0.16.1-preview/DotsPlayer/bee~/BuildProgramSources/DotsConfigs.cs(49)
    6.   at System.Lazy`1[T].CreateValue
    7.   at System.Lazy`1[T].LazyInitValue
    8.   at Il2Cpp+<>c.<.cctor>b__35_1 in C:/Space/Projects/NewTinyTest/Library/PackageCache/com.unity.tiny@0.16.1-preview/DotsPlayer/bee~/BuildProgramSources/Il2Cpp.bee.cs(70)
    9.   at System.Lazy`1[T].CreateValue
    10.   at System.Lazy`1[T].LazyInitValue
    11.   at DotsRuntimeCSharpProgram.Construct in C:/Space/Projects/NewTinyTest/Library/PackageCache/com.unity.tiny@0.16.1-preview/DotsPlayer/bee~/BuildProgramSources/DotsRuntimeCSharpProgram.cs(67)
    12.   at DotsRuntimeCSharpProgram..ctor in C:/Space/Projects/NewTinyTest/Library/PackageCache/com.unity.tiny@0.16.1-preview/DotsPlayer/bee~/BuildProgramSources/DotsRuntimeCSharpProgram.cs(56)
    13.   at BuildProgram.Main
    14.   at System.RuntimeMethodHandle.InvokeMethod
    15.   at Bee.StandaloneBeeDriver+<>c.<CreateBuildGraph>b__42_0
    16.   at Bee.StandaloneBeeDriver.RunBuildProgramInBeeEnvironment
    17.   at Bee.StandaloneBeeDriver.CreateBuildGraph
    18.   at Bee.StandaloneBeeDriver.BuildMain
    19.   at Bee.StandaloneBeeDriver.Main
    20. [E] DAG generator driver failed: "C:\Space\Projects\NewTinyTest\Library\PackageCache\com.unity.tiny@0.16.1-preview\DotsPlayer\bee~\bee.exe" build --beemode=ToCreateBuildGraph --commandlinerequest=get-editor-tools --commandlinerequest=testtinyproject-windows-dotnet-debug --root-artifacts-path=artifacts --bee-driver-buildprogramroot=.
    21. *** Tundra build failed to setup error (0.43 seconds), 0 items updated
    22.  
    same here
     
    vincismurf likes this.
  34. Thaina

    Thaina

    Joined:
    Jul 13, 2012
    Posts:
    260
    Investigate the
    DotsConfigs.cs
    file from the buildlog and found out that the project don't create file
    selectedconfig.json
    it required to

    So I just hack it like this in the meantime (you can just edit and overwrite that file directly)

    Code (CSharp):
    1.  
    2.     private static DotsRuntimeCSharpProgramConfiguration ReadConfigFromSelectConfigFile()
    3.     {
    4.         Console.WriteLine("ReadConfigFromSelectConfigFile : 56");
    5.         var file = NPath.CurrentDirectory.Combine("selectedconfig.json");
    6.         Console.WriteLine(file);
    7.         Console.WriteLine(file.FileExists());
    8.  
    9.         string configName = "wasm-debug";
    10.         if(file.FileExists())
    11.         {
    12.             var json = file.ReadAllText();
    13.             Console.WriteLine(json);
    14.             var jobject = JObject.Parse(json);
    15.  
    16.             Console.WriteLine(jobject);
    17.  
    18.             configName = jobject["Config"].Value<string>().ToLower();
    19.         }
    20.  
    21.         Console.WriteLine("configName : " + configName);
    22.         return _configs.Value.FirstOrDefault(c => {
    23.             Console.WriteLine(c.Identifier + " == " + configName);
    24.             return c.Identifier == configName;
    25.         });
    26.     }
    27.  
    Still disappointed that this is official unity package and it not opensource but having a seriously annoying bug like this leak out for many days
     
  35. Thaina

    Thaina

    Joined:
    Jul 13, 2012
    Posts:
    260
    More investigation leads me here

    We need to press this menu at least once (WHY?) to make the unity generate
    selectedconfig.json
    for the bee.exe to read the config line

    Will investigate more about this case. I think it should always generate selectedconfig when we press play button. So it seem like a bug in unity

    upload_2019-7-16_14-53-17.png
     
  36. Thaina

    Thaina

    Joined:
    Jul 13, 2012
    Posts:
    260
    Found out that it was a bug in
    com.unity.tiny@0.16.1-preview\Unity.Editor\Unity.Editor.Build\BuildStepGenerateBeeFiles.cs


    In the Run function it was like this

    Code (CSharp):
    1.  
    2.  
    3. public bool Run(BuildPipeline.BuildContext context)
    4. {
    5.     BuildProgramDataFileWriter.WriteAll(context.OutputDirectory.FullName);
    6.     WriteBeeExportManifestFile(context);
    7.     WriteBeeBuildSettingsFile(context);
    8.     return true;
    9. }
    10.  
    11.  
    But it actually need to be like this

    Code (CSharp):
    1.  
    2. public bool Run(BuildPipeline.BuildContext context)
    3. {
    4.     var workspaceManager = context.Project.Session.GetManager<WorkspaceManager>();
    5.     var selectedConfiguration = workspaceManager.ActiveBuildTarget.GetBeeTargetName() + "-" + workspaceManager.ActiveConfiguration;
    6.     BuildProgramDataFileWriter.WriteAll(context.OutputDirectory.FullName,selectedConfiguration);
    7.     WriteBeeExportManifestFile(context);
    8.     WriteBeeBuildSettingsFile(context);
    9.     return true;
    10. }
    11.  
     
  37. Thaina

    Thaina

    Joined:
    Jul 13, 2012
    Posts:
    260
    Open DOTS project in webGL cause weird error. Can build and run but it also make vscode cannot reference
    Unity.Tiny.HTML
    . And so I can't coding or running test runner properly

    upload_2019-7-16_19-56-57.png


    upload_2019-7-16_19-56-22.png
     
  38. Thaina

    Thaina

    Joined:
    Jul 13, 2012
    Posts:
    260
    Please just opensource the tiny repo in github so we could fix all the problem
     
  39. yossi_horowitz_artie

    yossi_horowitz_artie

    Joined:
    Jan 30, 2019
    Posts:
    62
    I'm excited that they're letting us see (and change!) the source at all! That's a huge step in the right direction for Unity, and it's the only thing that's made my company's current project possible.
     
  40. Silenus3

    Silenus3

    Joined:
    Jun 5, 2019
    Posts:
    16
    there seems to be some dependency's for the tiny project that does not update automaticly , I had to update the burst compiler manually.

    also when working with it I need to restart unity very often or script changes wont compile.
     
    vincismurf likes this.
  41. yossi_horowitz_artie

    yossi_horowitz_artie

    Joined:
    Jan 30, 2019
    Posts:
    62
    Is there one particular version of the 2019.2 beta which is recommended for this version of the Tiny package?
     
  42. DeveloperTechno

    DeveloperTechno

    Joined:
    Apr 30, 2019
    Posts:
    2
    Please use 0B3 or later
     
  43. DavEat

    DavEat

    Joined:
    Jul 5, 2016
    Posts:
    2
    I would like to have spacialized audio in a Tiny Project. For that I need a "spacialBlend" parameter on my sources.

    I thing it is not the way but I saw that inside Unity.Timeline.dll there is a reference to a class AudioMixerProperties who contains a spacialBlend parameter but if I add Unity.Timeline to the assembly Definition References the project does not build anymore (so doesn't work :/)

    Did anyone have any idea how can I have spacial audio blending inside Project Tiny (without coding it myself) ?
     
  44. yossi_horowitz_artie

    yossi_horowitz_artie

    Joined:
    Jan 30, 2019
    Posts:
    62
    I don't think there's a way to use the Entity Debugger with Tiny, yet. Is there currently a built-in way to log a dump of all of the entities in the world and all of the components on those entities, or anything along those lines?
     
  45. vincismurf

    vincismurf

    Joined:
    Feb 28, 2013
    Posts:
    191
    Tried Beta 2019.0b.10, still wont build =(
     
  46. IriySoft

    IriySoft

    Joined:
    Dec 21, 2016
    Posts:
    6
    Alright. When to expect Android/iOS targets? :p
     
  47. sniffle63

    sniffle63

    Joined:
    Aug 31, 2013
    Posts:
    159
    Any news on why my IDE keeps reopening itself instead of reloading the currently open IDE when i click 'open DOTS C# project', or why in the new update after i click 'open DOTS C# project', my new scripts still will not be recognized as apart of my project?

    Or maybe a small explanation on whats going to change scripting wise with the redone GameObject editor?
     
  48. Thaina

    Thaina

    Joined:
    Jul 13, 2012
    Posts:
    260
    I have fixed this issue by also toggling editor platform on the HTML.asmdef

    upload_2019-7-27_19-17-34.png
     
  49. MaDDoX

    MaDDoX

    Joined:
    Nov 10, 2009
    Posts:
    754
    Hard, hard crash when clicking on UI's "Layout" button while in DOTS mode (with any DOTS project open).
    Tested on 2019.2.0b10, Project Tiny 0.16.1, but I saw it happening in previous versions too.

    I tried to upload a package for bug reporting, it wouldn't work.
     
  50. shihab37

    shihab37

    Joined:
    Jul 7, 2015
    Posts:
    18
    Building "HelloWorld" sample for "Windows" works fine [after installing Windows SDK using VS2017 installer]
    but I get this error while trying to build for web (both AsmJS & Wasm)

    Code (CSharp):
    1. Build failed. Open E:\Hello_ProjectTiny\Library\DotsRuntimeBuild\build.log for more details.
    2. ##### ExitCode
    3. 1
    4. ##### Output
    5. shared:ERROR: 'E:\Hello_ProjectTiny\Library\DotsRuntimeBuild\artifacts\Stevedore\emscripten-llvm-win-x64\emscripten-llvm-e1.38.28-2019_04_05_07_52\clang++.exe --version' failed: [Error 6] The handle is invalid
    6. *** Bee build failed (1.21 seconds), 10 items updated
    7. UnityEngine.Debug:LogError(Object)
    8. Unity.Debug:LogError(Object) (at Library/PackageCache/com.unity.entities@0.0.12-preview.33/Unity.Entities/Stubs/Unity/Debug.cs:10)
    9. Unity.Editor.Build.BuildStepRunBee:Run(BuildContext) (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor.Build/BuildStepRunBee.cs:83)
    10. Unity.Editor.Build.BuildPipeline:RunBuildSteps(IReadOnlyList`1, BuildContext) (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor.Build/BuildPipeline.cs:137)
    11. Unity.Editor.Build.BuildPipeline:Build(BuildSettings) (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor.Build/BuildPipeline.cs:110)
    12. Unity.Editor.Application:Build() (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor/Application.cs:133)
    13. Unity.Editor.Application:BuildAndRun() (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor/Application.cs:144)
    14. Unity.Editor.Modes.PlayBar:PlayCommandHandler(CommandExecuteContext) (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor.Modes/PlayBar.cs:15)
    15. UnityEditor.CommandService:Execute(String)
    16. Unity.Editor.Modes.PlayBar:DrawPlayBar(CommandExecuteContext) (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor.Modes/PlayBar.cs:80)
    17. UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
    @Vecna and @oceanxiao also reported the same problem
    here: https://forum.unity.com/threads/project-tiny-c-preview-0-15-3-available.688969/page-4#post-4679345
    and here: https://forum.unity.com/threads/project-tiny-c-preview-0-15-3-available.688969/page-4#post-4694036
    for Tiny 0.15.3-preview
    Just as @oceanxiao mentioned, if I try to run the 'clang++.exe --version' command through windows command prompt, it works fine.

    I am using Unity 2019.2.0b10 and Project Tiny 0.16.1-preview on Windows 7


    While trying to investigate the issue further, I found something worth mentioning in the file "shared.py" located at '\Library\DotsRuntimeBuild\artifacts\Stevedore\emscripten\emscripten-nightly-1.38.28-2019_04_05_07_52\tools'
    [You can also find this file on emscripten github page here: https://github.com/emscripten-core/emscripten/blob/master/tools/shared.py]
    Code (JavaScript):
    1. # On Windows python suffers from a particularly nasty bug if python is spawning
    2. # new processes while python itself is spawned from some other non-console
    3. # process.
    4. # Use a custom replacement for Popen on Windows to avoid the "WindowsError:
    5. # [Error 6] The handle is invalid" errors when emcc is driven through cmake or
    6. # mingw32-make.
    7. # See http://bugs.python.org/issue3905
    and
    Code (JavaScript):
    1. # Install our replacement Popen handler if we are running on Windows to avoid
    2. # python spawn process function.
    3. # nb. This is by default disabled since it has the adverse effect of buffering
    4. # up all logging messages, which makes builds look unresponsive (messages are
    5. # printed only after the whole build finishes). Whether this workaround is
    6. # needed seems to depend on how the host application that invokes emcc has set
    7. # up its stdout and stderr.
    8. if EM_POPEN_WORKAROUND and os.name == 'nt':
    9.   logger.debug('Installing Popen workaround handler to avoid bug http://bugs.python.org/issue3905')
    10.   Popen = WindowsPopen
    11. else:
    12.   Popen = subprocess.Popen
    so, to make emscripten use this workaround thingy, I inserted this line
    Code (JavaScript):
    1. EM_POPEN_WORKAROUND = '1'
    in the config file "emscripten-config-1.38.28.py" located at '\Library\DotsRuntimeBuild\artifacts'

    After that the error changed to this
    Code (JavaScript):
    1. Build failed. Open E:\Hello_ProjectTiny\Library\DotsRuntimeBuild\build.log for more details.
    2. ##### ExitCode
    3. 1
    4. ##### Output
    5. root:INFO: Checking JS engine ['E:\\Hello_ProjectTiny\\Library\\DotsRuntimeBuild\\artifacts\\Stevedore\\node-win-x64\\node.exe'] failed. Check your config file. Details: maximum recursion depth exceeded while getting the str of an object
    6.  
    7. root:CRITICAL: The JavaScript shell (['E:\\Hello_ProjectTiny\\Library\\DotsRuntimeBuild\\artifacts\\Stevedore\\node-win-x64\\node.exe']) does not seem to work, check the paths in the config file
    8. *** Bee build failed (4.92 seconds), 7 items updated
    9.  
    10. UnityEngine.Debug:LogError(Object)
    11. Unity.Debug:LogError(Object) (at Library/PackageCache/com.unity.entities@0.0.12-preview.33/Unity.Entities/Stubs/Unity/Debug.cs:10)
    12. Unity.Editor.Build.BuildStepRunBee:Run(BuildContext) (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor.Build/BuildStepRunBee.cs:83)
    13. Unity.Editor.Build.BuildPipeline:RunBuildSteps(IReadOnlyList`1, BuildContext) (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor.Build/BuildPipeline.cs:137)
    14. Unity.Editor.Build.BuildPipeline:Build(BuildSettings) (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor.Build/BuildPipeline.cs:110)
    15. Unity.Editor.Application:Build() (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor/Application.cs:133)
    16. Unity.Editor.Application:BuildAndRun() (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor/Application.cs:144)
    17. Unity.Editor.Modes.PlayBar:PlayCommandHandler(CommandExecuteContext) (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor.Modes/PlayBar.cs:15)
    18. UnityEditor.CommandService:Execute(String)
    19. Unity.Editor.Modes.PlayBar:DrawPlayBar(CommandExecuteContext) (at Library/PackageCache/com.unity.tiny@0.16.1-preview/Unity.Editor/Unity.Editor.Modes/PlayBar.cs:80)
    20. UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
    I tried to run the mentioned 'node.exe' through my command prompt and it seems to be working fine.

    All this emscripten stuff is way beyond my very limited expertise. Please help...
     
Thread Status:
Not open for further replies.