

Open source 3D pie menus for Unity3D - SimHacker
http://www.youtube.com/watch?v=sMN1LQ7qx9g
I've made free open source pie menus for Unity3D! I'll write some documentation and more demos soon, and put it on the Unity3D app store. Here's a video: http://www.youtube.com/watch?v=sMN1LQ7qx9g Here's the source code: http://www.donhopkins.com/home/PieMenuDemo/PieMenuDemo.zip&#60;p&#62;They're written in C#, and support text items, image items, and 3d object items too! I've tried to make it general purose and easy to build pie menus and integrate them into your own applications.&#60;p&#62;Here's a silly demo, showing a set of SimCity pie menus:
http://www.donhopkins.com/home/PieMenuDemo/PieMenuDemo.html&#60;p&#62;They have a full set of useful notifiers so you can tightly integrate them with your application to give rich feedback during tracking (for example, modifying the 3D menu items, or previewing the effect of the menu item and distance parameter in real time, making them more like "direct manipulation").&#60;p&#62;For example, to show how you can implement feedback like The Sims pie menus with the head in the center that looks at the selected item, I've made a 3d object in the pie menu center with the webcam texture on it, so YOUR head is in the center of the menu, looking at the selected item! (That's why the demo asks for permission to use the webcam.)&#60;p&#62;The pie menu and each item has a title as well as a description. One feature I've added is the ability not only to disable an item, but also to provide an explanation of why the item is disabled! (PacMan in the demo is disabled, for example.) I wish other menus and widgets would do that -- it's frustrating when you can find an item you want, but can't figure out why it's disabled!&#60;p&#62;Another nice thing about them is that you can either configure algorithmically with an API, or with JSON data (which makes it easy to make dynamic data driven menus downloaded from a server or database), or construct them in the Unity3D editor out of objects (which makes it easier for artists to design them)!
======
SimHacker
I've made free open source pie menus for Unity3D! I'll write some
documentation and more demos soon, and put it on the Unity3D app store. Here's
a video: <http://www.youtube.com/watch?v=sMN1LQ7qx9g> Here's the source code:
<http://www.donhopkins.com/home/PieMenuDemo/PieMenuDemo.zip>

They're written in C#, and support text items, image items, and 3d object
items too! I've tried to make it general purose and easy to build pie menus
and integrate them into your own applications.

Here's a silly demo, showing a set of SimCity pie menus:
<http://www.donhopkins.com/home/PieMenuDemo/PieMenuDemo.html>

They have a full set of useful notifiers so you can tightly integrate them
with your application to give rich feedback during tracking (for example,
modifying the 3D menu items, or previewing the effect of the menu item and
distance parameter in real time, making them more like "direct manipulation").

For example, to show how you can implement feedback like The Sims pie menus
with the head in the center that looks at the selected item, I've made a 3d
object in the pie menu center with the webcam texture on it, so YOUR head is
in the center of the menu, looking at the selected item! (That's why the demo
asks for permission to use the webcam.)

The pie menu and each item has a title as well as a description. One feature
I've added is the ability not only to disable an item, but also to provide an
explanation of why the item is disabled! (PacMan in the demo is disabled, for
example.) I wish other menus and widgets would do that -- it's frustrating
when you can find an item you want, but can't figure out why it's disabled!

Another nice thing about them is that you can either configure algorithmically
with an API, or with JSON data (which makes it easy to make dynamic data
driven menus downloaded from a server or database), or construct them in the
Unity3D editor out of objects (which makes it easier for artists to design
them)!

I've made a custom Unity3D editor that lets you edit the properties, drag and
drop textures and objects, edit and rearrange the items, and has some
convenience commands, so you can place the 3D item objects in a circle in the
3D world, and call a command that figures out which item is in which direction
by their position, and tidies them up. (That is much easier than arranging
their order in a linear list of items.)

I'm going to play around with more in-world editing features, to make them
easier for artists to design them. Ultimately users will be able to edit pie
menus at run-time, and save them out as JSON. But for now, artists can build
them in the Unity3D editor, and programmers can define them with JSON.

