A Unity ID allows you to buy and/or subscribe to Unity products and services, shop in the Asset Store and participate
in the Unity community.
Discussion in 'Assets and Asset Store' started by reindeer-games, Mar 11, 2013.
I suggested some more features for a sphere long time ago. Is there any chance that this feature will come? This is the only feature I am really missing from this great asset.
Hi, just wondering if you've been able to make any headway with the mesh collider trigger issue?
I think I did found a solution, it wasn't really about vertices ordering as I thought. It looks like Unity accepts mesh on mesh collision only if both meshes are convex. After setting "convex" to true in MeshCollider option (inspector or code) it works as expected.
Yes, I will be adding this as well as other new features for version 2.0.
it's been a while since I released first version of this package (almost one year and half). First of all thank you all for your feedback. I decided to revamp the package a bit and make more new features for version 2.0. The plan is not to make more primitives, but to create more general mesh editing system.
The initial plan is:
* keep the primitives and mesh cutter
* add mesh editing
- select and manipulate face/vertex/edge
- face extrusion
- split to submeshes/merge/etc
- mesh subdivision/refining
* GUI, toolbar with icons to feel more like a modeling system
If you have more ideas and/or suggestions, feel free to reply here.
I think the most powerful feature of this package is being about to update the mesh and generate it at runtime. If you are looking for new features I would suggest perhaps implementing a level of detail system where the primitives automatically adjust their detail based on have far from the camera they are. You could also perhaps add a procedural noise or detail layer to the surface of a primitive. For example suppose I wanted to create a liquid metal effect on a sphere or other primitive where the surface rippled. It would be far better doing that procedurally than having to animate a baked bump map for example. It would also load faster if done procedurally. Imagine if at certain points you need to look at one of those spheres very closely, if it was done with a texture and baked polygons at a certain point it would look blocky but if it was done procedurally with a level of detail system it would never become blocky and when you walked away from the sphere you wouldn't have to worry about a high polly count because the level of detail system would just lower its detail.
Tested the latest version and it seems that the sphere has a tiny bug:
When you use the normals type 'Face' it only works as expected when you set a tiny amount of the hemisphere factor. As full sphere it looks like vertex normals.
Latest release appears bugged.
Assets/PrimitivesPro/Scripts/MeshCutting/Polygon.cs(137,38): error CS0246: The type or namespace name `ThirdParty' could not be found. Are you missing a using directive or an assembly reference?
For now I've had to completely gut the cutting plane feature to avoid this error.
Please try the new version 1.8.5, I have changed namespace of 3rd party library Poly2Tri.dll to PrimitivesPro.ThirdParty.P2T, also renamed the Poly2Tri.dll to P2T.dll.
The new version should work, I have tested it on windows/android/webplayer platform without any problems.
If you still see the error, make sure that you have deleted the old DLL file Poly2Tri.dll, from now there is only one dll called "P2T.dll".
Hi I noticed a bug with the BOX script. If I have more than one box in a scene, and I change the dimensions of one box, it changes the dimensions for all boxes in the scene. Has this been fixed or am I doing something wrong? Thanks
Another note; this only happens when I create the boxes by duplicating another box in the scene. If I create fresh boxes from the GameObject->Create Other menu they act independent from the others.
yes, I know about this, if you want to duplicate a primitive, don't use the standard Unity function, but the "Duplicate" button in the primitive inspector.
How can I instantiate a BoxPro prefab and then modify it at runtime? For some reason hitting the 'create prefab' does not attach a Box script and hence I cannot edit the box once it has been instantiated. The documentation does not provide information on prefabs Thanks
sorry for the missing documentation. Please try the new version 1.8.6, I added another option for creating prefab with the script. Now there are 2 buttons "Create static prefab", which creates prefab with exported mesh and material, and another button which creates prefab with material and generation script.
a new version 2.0 is already on asset store:
Toolbar - activate from Window->PrimitivesPro
polygon - vertex - edge editing
export to mesh, prefab, OBJ
Any feedback is welcome.
More mesh-editing features will come in time (extrusion, deletion, submeshes are already on my list).
I get the following 2 errors with version 2
Assets/PrimitivesPro/Scripts/Demo/Demo.cs(115,35): error CS0117: `Box' does not contain a definition for `Create'
Assets/PrimitivesPro/Scripts/Demo/Demo.cs(508,32): error CS0030: Cannot convert type `PrimitivesPro.GameObjects.BaseObject' to `Box'
Wow! The new Editor is really cool!
It's always a pleasure to see how this asset is getting better and better.
Perhaps it could be useful to have some tooltips in the editor. (Most of the icons are self-explaining, but primitives like the cube/rounded cube are looking very similar.)
I also have sometimes problems with this. It's mostly a problem of other Assets code when the don't use Namespaces. I guess you have a second Box class somewhere in your project that collides with Primitive Pro. One solution is that you delete the demo scripts from Primitive Pro. Or you can search with your code-editor for the word 'Box' in your project and change the other class code.
Hi, yes, the problem is in the naming collision. You probably have some class or namespace called Box in your code and it collides with Box from Demo. Anyway, I will remove the 'using' keyword from the demo and use the full path, it should help.
Is it possible to make the UV 's editable: scale, move, rotate ?
Hi, UV editing is in my TODO list, but I cannot promise when it will be done.
I just created a new update 2.1 with a grid and snapping in mesh-editing mode.
Hey reindeer games,
I have the same issue as above - I'm using whydoidoit's Unity Serializer which has conflicts with the Box namespace. It would take me a while to sift through all his scripts to see if there'd be issues with changing it on his end, but I'll give it a try.
Is there some workaround for this? I'd really like to use PrimitivesPro as soon as possible, it looks like a great product!
please update to the latest version 2.1a, I have just made an update with fixed namespaces in Demo class.
I have dynamically created a torus and I want to change its radius using a value input from a slider. The UI part is all working but when I move the slider I get an error.
Type IDragHandler expected Slider received. i:0. The given key was not present in the dictionary.
Looking for this on the forums seems to indicate that it occurs when adding a monobehaviour more than once to a gameobject. My slider eventually call this function
private void UpdateTorusRadius(WheelRec r)
Debug.Log("Updating torus " + r.ID + " radius: " + r.Radius);
Torus t = WheelMap[r];
t.GenerateGeometry(r.Radius,0.5f, 40, 20, 0.0f, NormalsType.Vertex, PivotPosition.Center);
So is using GenerateGeometry like this the way to do it? Have you experienced this problem?
I have found the problem which was with my code not with PrimitivesPro, sorry still new to the unity way of working.
Hi, I have a question.
Is it possible to create the Cone according to the light of Spotlight?
If possible, Can make it a partial Cone access like wall?
Sorry my bad English.
so, I upload a png file.
Hi, not sure if I understand you correctly, but you can make a truncated cone like this just by adjusting the cone parameters:
If you want to have cone truncated by plane which is not parallel to cone base you would have to use the mesh cutter, create a cone first and then apply the mesh cutter.
Was about to purchase this asset and the Unity store warned me that it might not work with Unity 5.... could you confirm Unity 5 support?
I just re-upload with Unity 5, you should not see any warnings anymore. Let me know if you have more problems.
Thanks reindeer games - I havenow purchased successfully.
Hello- Is there a way to vertex snap while using the Mesh Editor in PrimitivesPro?
Hi, sorry, there is no vertex snapping at the moment, but I will make one, I understand this can be painful while editing, there is only a grid snapping in current version.
Thanks! It's a very powerful tool and I believe it would really help polish-up its feature-set and tremendously boost its usefulness for a lot of developers.
A little problem.
I bought this for cutting trees. But... You can try it by yourself.
Take an original Terrain Asset, "Palm". Cut it.
It will mix up materials.
When you get that to work. This is must for RTS game makers
Sorry for problems, I'll check it asap.
I'm using U5.1.1.f1
Btw. The boolean cutter works just fine. Fine enough, that it shouldn't be disabled by default.
Only reasonable EASY and FAST way at the moment to cut door and window holes to building meshes (from 3rd).
Oh. You should rename "Demo" variable/class to DemoX, DemoPrimitive or something, since
this "Demo" is used so f*cking other demos. These kind of namings will grow a gray hairs for old
man like I
Yes, I fixed the material problem, I added option for specifying UV portion of the original texture. Currently it takes the whole texture and map it on the cut piece so it might look wrong. But before I update the asset I need to add the vertex snapping and another bugfix. Should be finished by the end of the weekend.
the new version is already on the store, it contains option for setting UV for cut face after using mesh cutter and improvements of the mesh editor (settings window, vertex snapping and more options).
Mmmm. That Palm cutting seems not to work yet?
Hi, you have to specify the cross section UV of the material in the cutter option, by default it is (0, 0, 1, 1) which is a whole texture, which is mapped on the cut pice and it looks wrong. Specify just the part of the texture, for example (0.5, 0.5, 0.6, 0.6) and it will use only a part of the texture on the cut polygons.
Let me know if it fixed your problem.
That palm (and other trees on unity) doesn't use atlas texture only. (btw, I hate it, atlas I mean. Slow
to edit, slow to create, confusing most of the time. And where is the WORKING unity editor for atlases).
Those trees uses several independent materials + atlas for leafs.
When I go to instantiate a Prefab, that I created with object's from Primitive Pro, during run time it is missing all the Primitive Pro objects.
I see that I can go through and save static objects, but that is per piece. What would be the best way to save objects as a whole to instantiate them during run time?
if you need to instantiate PrimitivesPro object in runtime, don't use prefab and just create it directly in runtime, for example:
// create a box primitive in runtime
var box = Box.Create(1f, 1f, 1f, 1, 1, 1, false, PivotPosition.Botttom);
// create a sphere primitive in runtime
var sphere = Sphere.Create(1f, 4, 0, 0, NormalsType.Vertex, PivotPosition.Botttom);
// create a torus in runtime
var torus = TorusKnot.Create(0.5f, 0.3f, 10, 4, 2, 3, NormalsType.Vertex, PivotPosition.Botttom);
What's the purpose of the two create prefab buttons if I can't instantiate the prefabs? I'm hitting the same issue as WeeBeez.
edit: Looks like I should be using Create Prefab Static instead
Yes, the static prefab button generates a static prefab - geometry + collider, you can freely instantiate it. The other prefab is a prefab that you can use for runtime generation of the mesh.
I've read the forum here and looked at the documentation. I haven't actually dug into the code.
I see you have cube map for setting essentially a different portion of a texture for each side of a cube. How difficult would it be for you to add support for specifying a texture number on a Texture Atlas created using PackTextures?
I've messed with voxel cubes a lot and have done this myself a half dozen times now. I am looking at your package though and it could potentially make it so I never have to do that again.
In my voxel implementations of cubes I could specify which texture from the atlas appeared on any of the 6 sides of the cubes. I had other things as well, but cubes were good enough for most needs.
It'd be really nice if ANY of your primitives could reference coordinates on an atlas to use for their texture. I'm thinking this might not be too difficult to implement if you haven't done so already and I just didn't see it. If you haven't done it and you need some examples or assistance let me know.
This is very useful for reducing draw calls by having most of the textures needed atlased, and it is especially useful for those of us that actually generate the atlases at runtime.
Great product by the way!