With android at home we as developers should take notice and feel free to invade the home. Now is the time for hardware hacking with android as the remote. Think of all the things we can accomplish and with Google’s open accessories api’s we don’t need to pay Google a fee to play with the [...]
-
I posted to i-create.org
Thoughts on Android and WWDC perdictions
http://i-create.org/2011/06/05/thoughts-on-android-and-wwdc-perdictions/
June 5 2011, 7:38pm | Comments »
-
I posted to i-create.org
ThreeJS model parser for Away3D Broomstick running on Molehill
http://i-create.org/2011/05/30/threejs-model-parser-for-away3d-broomstick-running-on-molehill/
This JSONOBJ parser will take three.js and parse them for preFab to allow prefab to also export in the JSONOBJ three.js format. Their are many similarities in these projects and I think it would be nice to see the projects working and communicating more between each other maybe they already do. Some things that I would like to point out about the three.js format it supports morphing targets. If you are familiar with the project then you might already know the morphing abilities were used in the J3D that will parse Unity3D scenes I am curious to play around with this because I think it would be nice for Away3d to have this functionality as well. So how does the Three.js obj This demo requires FlashPlayer 11 stage3D OBJ parser and borrowed a great deal of the functionality that was already built in the OBJ parser. I will still have to add materials which I don’t believe will be difficult so I have left the OBJ code in this class it will be re-factored later to work with the JSONOBJ converter. I will also need to explorer the binary format and the Morph targets in the future. I hope the community will find this useful! Another thing I like about Away3D and three.js is the ability to use JigLib and I will have a demo out soon the shows utilizing JigLib in Away3D and in three.js Check out JigLib JS What is threeJS here is a good video that discuss the creation of the ROME project that utilizes threeJS
- Tags:
- 3d
- ActionScript
- i-create
- Adobe
- Open Source
- javascript
- away3d
- json
- Experiment
- webGL
- threejs
- demo
May 30 2011, 8:58pm | Comments »
-
I posted to i-create.org
Molehill Away3D Dancing Fish Demo Part 1
http://i-create.org/2011/05/16/molehill-away3d-dancing-fish-demo-part-1/
Launch Demo flash player is such a leap from the previous versions its really quite astounding. So if you haven’t downloaded that latest flash sdk and plugged it into your flash builder you are really missing out on a great deal. With Flash Player 11 support on mobile it will be a big deal not to mention all the new cool 3D capabilities that will run on literally any desktop and most mobile devices! It will allow you to quickly create games and interactive experiences and easily share them and sell them trough app stores so the time to learn it is truly now! Be proactive build today for tomorrow. You won’t have to purchase multiple product suites to accomplish your goal with web premium you can simply get it done quickly. I have been waiting for this product for awhile and I am really looking forward to taking full advantage of it as a developer! As a teenager I can remember downloading Wolfenstein off of a BBS and running it on my 486 that ran windows and dos-shell. I thought it was the coolest thing on earth! I spent coupious amounts of time palying it because it was the first true 3D experince on copmuters and it was shareware! In the past we have been able to create compleling 3D experinces on flash but never before to this extent! Stage3D formerly Molehill will allow us as developers to build emmersive interactive enviorments that are more engaging than Quake3 because it scales not to mention we have a rather large amount of libraries at our finger tips like the Hype Framework, TweenLite, Tweener, Download Example / Molehill, Silverlight all going at it we as developers profit! Three.js was prominetly displayed on at google IO and the Ro.me project is simply amazing check it out! I am anxious to see where webGL will take us. You can view the interactive film that Chris Milk and Google Developer
- Tags:
- 3d
- ActionScript
- Flash
- Flex
- i-create
- Adobe
- as3
- Silverlight
- Open Source
- away3d
- json
- android
- Experiment
- molehill
- Adobe Flash Player
- ADOBE SYSTEMS INCORPORATED
- fp11
- really cool technology
- Stage3D
- Twitter Inc
- web premium
- wegGL
May 16 2011, 9:50pm | Comments »
-
I posted to i-create.org
Simple SpiroGraphic with processingJS
http://i-create.org/2010/11/19/simple-spirographic-with-processingjs/
ProcessingJS is almost fully implemented. If you hit the toggle you will see that the current implementation of processingJS supports just about every feature of the java implementation. It also now supports the 3d canvas. I have mostly been using processing for 2d experiments and I have found it extremely easy to use. I also like the fact some many other libraries mimic Processing. I have also been dabbling in
November 19 2010, 8:12pm | Comments »
-
I posted to i-create.org
The Internet == ice9 for Business
http://i-create.org/2009/12/19/the-internet-is-equal-tooice9-for-business/
Ice-nine is a fictional material conceived by writer Kurt Vonnegut in his novel Cat’s Cradle. It is supposed to be a more stable polymorph of water than common ice (Ice Ih) which instead of melting at 0° Celsius (32° Fahrenheit), melts at 45.8°C (114.4°F). When ice-nine comes into contact with liquid water below 45.8°C (which is thus effectively supercooled), it acts as a seed crystal, and causes the solidification of the entire body of water which quickly crystallizes as ice-nine. A global catastrophe involving freezing the Earth’s oceans by simple contact with ice-nine is used as a plot device in Vonnegut’s novel. – http://en.wikipedia.org/wiki/Ice-nine As technology progresses we will see more and more people using thin-client systems again. They will store data in the cloud and mobile devices will proliferate and rapidly change the landscape of personal computing small is the new big. Our cell phones will morph into powerful desktop like devices(oh and this is predictable just study
December 19 2009, 8:59pm | Comments »
-
I posted to i-create.org
Mono is Spreading
http://i-create.org/2009/12/19/mono-is-spreading/
What is mono? Mono is the OpenSouce version of C# and the project by Novell / M$ is growing rapidly. It is amazing to me to see the growth and speed of the Mono Project! It is rapidly catching up to the current Silverlight version. Check out Moonlight 2.0 if you haven’t yet and install it on your Linux box it runs most SilverLight content without any issues! I am not a big fan of format lock-in and I am glad to see Microsoft finally sharing more with the opensouce community. I like all technologies, I like to experiment with them and see what they can do! C# is a language that is very similar to JAVA and ActionScript all are strongly typed OOP languages tied to a specific run-time environment. I would also like to reiterate my stance on being Technologically Agnostic I am not here to point out what run-time is the best run-time because in different environments and situations call for different solutions. As a developer I believe it is extremely important to be flexible learn new languages challenge yourself. My impression of SilverLight is this it is extremely powerful because it allows you to utilize C# in the browser. I also believe the people at Microsoft are really busting their tail in developing it. It is an excellent product and I believe it will be around for a considerable time. As for the Expressions Tooling these are my beliefs I think the interface of Blend could be more intuitive. I guess my opinion of the Blend and Expressions is it’s ok but it certainly isn’t Photoshop or Flash. I love flash and Photoshop. I certainly don’t mind learning new applications and I do all the time. I really like it though when I reach that level of comfort where I can just absolutely rip through a project and with Adobe products I am there completely. I always keep my mind open though I also like to use FlashDevelop, VisualStudio, and Netbeans. I also love the speed of the command prompt and ROR. Long story short I think Microsoft interface for Blend is clunky. They need to hire some evangelists that have the cool factor working for them Adobe hires Artist their evangelists are quasi rock-stars. I think Microsoft could benefit from sponsoring some generative artists. The need to be able to communicate this to the crowd that tends to use their right frontal lobe more but hey what do I know it’s just my opinion. I think for it to be a competitor of flash they will have to get it in the mobile arena. I think Microsoft will do this I would be willing to bet the next windows mobile will feature SilverLight and I tend to think they will tie an appstore together with the XNA network unifying it with the Zune and X-Box brands. This way Microsoft will finally have a valid appstore competitor. I definitely see Microsoft transforming itself quickly they let the web slip away and windows is no longer the powerhouse it was. If Microsoft is to survive the new and dawning age of the mobile revolution it will have to develop their web products and languages to compete and be on any device. It is going be more and more important for them to be compatible with different operating systems. People do not want to be tied to one specific device it is extremely important for new applications to be Interpolated into any device the web is the common ground they all share and the web formats are the most important formats period end of story. Well that’s cool so what have you been up too lately? Work, migrating my sites onto MediaTemple slowly but surely. MediaTemple’s setup is awesome can’t wait to be finished. MediaTemple gives you full root privileges they have an iPhone application to help monitor issues. They also alllow you to scale your services as you grow and install anything that rocks! I have also been busy shopping and preparing for Christmas. It is getting close.
Links of Interest: Silverlight Quake MoonLight Bookmark and Share More »Powered by Bookmarkify™
- Tags:
- RIA
- C#
- Silverlight
- Open Source
- Mono
- Microsoft
- net
December 19 2009, 7:18pm | Comments »
-
I posted to i-create.org
f*Develop the Work-flow
http://i-create.org/2009/09/20/f_develop_the_work-flow/
Since adobe opensouced their compiler for actionscript their has been growth in the amount of tools developers can now choose from when developing flash applications. I use a variety of tools I use the flexBean for use with netbeans on my linux box and textmate on my apple. I also firmly believe the best software I have ever purchased is the CS4 suite from adobe. I love using flash but sometimes you want to simply write code and get your tasks done quickly. Flash is a great authoring environment for designers but I love using flash develop to create my actionscript projects. Flash develop is lightning fast light weight IDE for flash and it has greatly improved the quality of flash I now develop. When you write out all your code and do garbage collection yourself you will finally be able to utilize flash to it’s fullest capabilities.
How to setup an opensource flash/flex/haxe workflow. Download and install flash develop here. Flash develop utilizes java so make sure you currently have java running on your machine. Flash Develop was created utilizing the .Net runtime so as a result you can only run flash develop on a windows computer. You will also want to download the flex sdk you can download that from opensource.adobe.com. Download the compiler and place it on your computer. I currently have my compiler located at c:\flex_sdk\flex3\ the main folder is flex_sdk with sub folders that are labeled with the proper compiler version this way I can switch between compiler versions if I need to. Flash develop is a wonderful and powerful ide that will help you code quickly and efficiently. You should also be aware that you can utilize flash develop with haXe as well. You can download and install haXe from haXe.org it is well worth your time to do so. You should also download and install the flash debugger
Once you install flash develop you will need to configure your environment. It is really easy to do you can open the Program Settings menu this menu is located by clicking on the tools menu or by clicking f10. You can then navigate to the as3 Context menu this menu asks you for your Flex SDK location. Place your flex sdk location in the menu. This menu has many other settings for the IDE like as2 compiler option (you can install motion-twin an opensouce compiler for as2 development). The next thing to do is to make sure your debugger is setup this way you can trace out variables in the output window of flash develop this is located in the flash log viewer option it should look something like this C:\Users\username\AppData\Roaming\Macromedia\Flash Player\Logs\flashlog.txt after you have done this you are ready to go. You might also want to download a few other debugging tools to help you out with your flash development. I would recommend the use of deMonster Debugger and thunderbolt these are handy tools for flash development. Adobe MAX predictions and hopes -> Flash Player 10 support for Android, Pre, and Windows Mobile. I also hope adobe creates an application that allows us to compile AS3 to C++ for use on the iPhone this is something that haXe is already doing and something that the Mono project has also done for C# so lets hope Adobe releases something that will help us create better iPhone applications! Suggested Reading: Papervision3D Essentials Professional haXe and Neko Flash Develop Links: FlashDevelop Flash Player Debugger FlexSDK Java haXe Flash Development Debuggers: deMonster Debugger thunderbolt Bookmark and Share More »Powered by Bookmarkify™
September 20 2009, 9:51pm | Comments »
-
I posted to i-create.org
Got Flint?
http://i-create.org/2009/07/06/got-flint/
Well it being the fourth of July and all I thought I might ask? So what exactly is flint other than a stone I can clang together to generate a spark? Flint is also a particle engine created for actionscript 3 by Richard Lord. Which is really easy to use and is also compatible with many open source 3d engines like away3d or papervision3d so I recommend checking it out it can be useful for creating a variety of effects and is also fun to play around with. You can create all the firework effects you can think of also snow etc.. The flint library is also available in C# although I have not played with it but will look forward to doing so in the near future. I am also currently examining Particle Pusher that was created by converting the c++ library particlesystems This particle library was thoroughly optimized and look very impressive it also uses Pixel Bender Filters as well. Anyway here is a ridiculously simple Sparkler. This is one of the examples that comes with Richard Lords libraries I have only made a few modifications. The point is if you needed to create a particle effect with action script you could do it quickly and easily. I am also curious to see if the Flint Library can’t be converted to be used in .Net 3.5 I will play around with it shortly. Here is a virtual sparkler in case you didn’t get to have one.
?View Code ACTIONSCRIPTpackage { import flash.display.DisplayObject; import flash.geom.Point; import org.flintparticles.common.actions.*; import org.flintparticles.common.counters.*; import org.flintparticles.common.displayObjects.Line; import org.flintparticles.common.initializers.*; import org.flintparticles.twoD.actions.*; import org.flintparticles.twoD.activities.FollowMouse; import org.flintparticles.twoD.emitters.Emitter2D; import org.flintparticles.twoD.initializers.*; import org.flintparticles.twoD.zones.*; /** * ... * @author Brendon Smith -> Graphic/Generative Artist/Software Engineer * i-create|therefore-i am -> i-create.org * seacloud9 Interactive Design -> seacloud9.org * seacloud9 Commercial Design -> seacloud9.com / public class Sparkler extends Emitter2D { public function Sparkler( renderer:DisplayObject ) { counter = new Steady( 300 ); addInitializer( new SharedImage( new Line( 200 ) ) ); addInitializer( new ColorInit( 0xFF9BD8F4, 0xFF0EF813 ) ); addInitializer( new Velocity( new DiscZone( new Point( 0, 0 ), 750, 200 ) ) ); addInitializer( new Lifetime( 150, 70 ) ); addAction( new Age() ); addAction( new Move() ); addAction( new RotateToDirection() ); addActivity( new FollowMouse( renderer ) ); } } } package { import flash.display.Sprite; import flash.filters.BlurFilter; import flash.filters.ColorMatrixFilter; import flash.geom.Rectangle; import flash.text.TextField; import org.flintparticles.twoD.emitters.Emitter2D; import org.flintparticles.twoD.renderers.; /** * ... * @author Brendon Smith -> Graphic/Generative Artist/Software Engineer * i-create|therefore-i am -> i-create.org \n * seacloud9 Interactive Design -> seacloud9.org \n * seacloud9 Commercial Design -> seacloud9.com \n */ [SWF(width='325', height='400', frameRate='70', backgroundColor='#ffffff')] public class Main extends Sprite { private var emitter:Emitter2D; public function Main() { var txt:TextField = new TextField(); txt.text = "Move the mouse over this box."; txt.autoSize = "left"; txt.textColor = 0xFFFFFF; addChild( txt ); var renderer:BitmapRenderer = new BitmapRenderer( new Rectangle( 0, 0, 400, 400 ) ); renderer.addFilter( new BlurFilter( 5, 2, 5 ) ); renderer.addFilter( new ColorMatrixFilter( [ 1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0.95,0 ] ) ); addChild( renderer ); emitter = new Sparkler( renderer ); renderer.addEmitter( emitter ); emitter.start( ); } } }
Code Our Fourth of July was pleasant we grilled out had some friends over and watched other people light fireworks off while we had steak / burgers / beer etc. It was fun we also played horse shoes. Particle Libraries: Particle Pusher / Source / Particle Systems Flint Other Cool Links: OpenProcessing Bookmark and Share More »Powered by Bookmarkify™
July 5 2009, 10:30pm | Comments »
-
I posted to i-create.org
Technologically Agnostic
http://i-create.org/2009/06/06/technologically-agnostic/
Technologically agnostic and liking it. When it comes to new technologies many come and go so it can be a challenge to see which ones really take root. People love to talk about open source technology and I myself love open technology because it encourages developers like myself to play with whatever I want and experiment with it and see what kind of results I get. People can be extremely opinionated on this subject in particular and it gets to be like discussing religion or politics. In short no one really wins there are great technology offerings on both sides! I believe if you treat these opinions as religion you will lose. What is important to me? Have fun become a better programmer by experimenting with all the different stacks that are offered. You always win if you don’t really care and can honestly recognize which particular stack is well suited for the job and back it up with undeniable facts. It is also important to notice your crowd. With that being said please take it from me any opportunity you have to learn something new is always a good opportunity! Never be afraid of failure. Lately I have been working on relatively simple generative code examples and I have been working on porting these examples to Silverlight, Flash, and Processing. Why no reason it’s just fun. To be 100% honest when I saw silverlight 1 I absolutely hated it. Now I am getting a little more comfortable with it and love the fact I can use C# to program in for silverlight. This is not to say I have lost my intense love and fascination with flash and ActionScript because I never have or will. It is just the quest to learn experiment and know both technologies with confidence. I have been reading Kostas Terzidis’s book Algorithms for Visual Design and I found I love the book and what I learn in the book doesn’t just apply to Processing but all programming languages in general and it helps me to know how to problem solve relatively complex questions quickly! I have a high regard for Terzidis’s book it is an exceptional book in many ways it also happens to have a whole chapter devoted to writing image processing algorithms. I might try to port one to show you processing/hydra/c# pixel shader/pixel bender example. Anyway here is quick and dirty example of how you can use processing /silverlight/flash for mouse tracking apply it to scale, and rotate a rectangle. You will also apply a gradient programatically with processing /c#/actionscript3. This is just meant to be a ridiculously simple example. If you play with the same principles that are laid out in this example you could use it to build a rudimentary on-line drawing application. (of course in silverlight you could just use ink canvas but what is the fun in that?)
?View Code PROCESSINGcolor[] shadeTable; void setShades(color c){ float r,g,b; r = red(c); g = green(c); b = blue(c); r /= 255.; g /= 255.; b /= 255.; shadeTable = new color[256]; for ( int i = 0; i < 255; i++) shadeTable [i] = color((int)(ri),(int)(gi),(int)(bi)); } void setup(){ noFill(); size(500,500); } void draw(){ setShades(color(255,0,0)); background(255); for (float i=1; i<20; i++){ pushMatrix(); translate(width/2,height/2); scale(1/(i/mouseY90),1/(i/mouseY90)); rotate(radians(imouseX)); for (int x=1; x<155; x++){ fill(shadeTable[x]); noStroke(); rect(0,x,200,100); } popMatrix(); } }
C# XAML Silverlight 3 Example of simple mouse tracking.
?View Code CSHARPusing System; using System.Collections.Generic; using System.Collections; using System.Linq; using System.Net; using System.Windows; using System.Windows.Controls; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Shapes; using System.Windows.Messaging; using System.Globalization; using System.Diagnostics; namespace rectGen { public partial class MainPage : UserControl { public Point mousePoint; public Point renderT = new Point(0.0 ,1.0); public Point vectorLength = new Point(); public Rectangle[] blueRectangle = new Rectangle[20]; public double angle; public MainPage() { InitializeComponent(); renderRectangle(); LayoutRoot.MouseMove += new MouseEventHandler(LayoutRoot_MouseMove); } public void renderRectangle() { for (int i = 0; i < 19; i++) { blueRectangle[i] = new Rectangle(); blueRectangle[i].Height = 200; blueRectangle[i].Width = 300; LinearGradientBrush blueGR = new LinearGradientBrush(); blueGR.StartPoint = new Point(0, 0); blueGR.EndPoint = new Point(1, 1); GradientStop blueGS = new GradientStop(); blueGS.Color = Colors.Blue; blueGS.Offset = 0.2; blueGR.GradientStops.Add(blueGS); GradientStop greenGS = new GradientStop(); greenGS.Color = Colors.Green; greenGS.Offset = 0.75; blueGR.GradientStops.Add(greenGS); blueRectangle[i].Fill = blueGR; blueRectangle[i].Name = "blueRect" + i; blueRectangle[i].Opacity = 0.4; LayoutRoot.Children.Add(blueRectangle[i]); } } private void LayoutRoot_MouseMove(object sender, MouseEventArgs e) { for (int i = 0; i < 19; i++) { Point mousePoint = e.GetPosition(null); RotateTransform rectR = new RotateTransform(); ScaleTransform rectT = new ScaleTransform(); rectT.ScaleX = mousePoint.X * .005; rectT.ScaleY = mousePoint.Y * .005; double radians = Math.Atan2(mousePoint.Y, mousePoint.X * i+1); angle = Convert.ToInt16(720 / Math.PI * radians); Debug.WriteLine(angle); rectR.Angle = angle; TransformGroup[] myTransformGroup = new TransformGroup[20]; myTransformGroup[i] = new TransformGroup(); myTransformGroup[i].Children.Add(rectT); myTransformGroup[i].Children.Add(rectR); blueRectangle[i].RenderTransform = myTransformGroup[i]; } } } }
ActionScript 3:
?View Code ACTIONSCRIPTpackage { //import com.adobe.protocols.dict.events.ConnectedEvent; import flash.display.GradientType; import flash.display.SpreadMethod; import flash.display.Sprite; import flash.events.Event; import flash.events.MouseEvent; import flash.geom.Matrix; /** * ... * @author brendon smith */ public class Main extends Sprite { public var xPos:Number = new Number();
public var yPos:Number = new Number();
public var rWidth:Number = new Number();
public var rHeight:Number = new Number();
public var color:uint = new uint(); public var rect:Sprite; public var matrix:Matrix; public var rectArray:Array; public function Main():void { stage.stageWidth = 325; stage.stageHeight = 400; if (stage) init(); else addEventListener(Event.ADDED_TO_STAGE, init); } public function createRectangles():void { rectArray = new Array(); for (var i:uint = 0; i<60; i++ ) { xPos = 300; rWidth = 160; yPos = 300; rHeight = 100; rect = new Sprite(); addChild(rect); rectArray.push(rect); var fillType:String = GradientType.LINEAR; var colors:Array = [0x078cfb, 0x07fb07]; var alphas:Array = [.05, .05 ]; var ratios:Array = [0x00, 0xFF]; var matr:Matrix = new Matrix(); matr.createGradientBox(162, 200, 0, 0, 0); var spreadMethod:String = SpreadMethod.PAD;//SpreadMethod.PAD, SpreadMethod.REFLECT rect.graphics.beginGradientFill(fillType, colors, alphas, ratios, matr, spreadMethod); rect.graphics.drawRect(0, 0, rWidth, rHeight); rect.graphics.endFill(); rect.x = 162; rect.y = 200; } stage.addEventListener(MouseEvent.MOUSE_MOVE,mouseStretchRotate); } public function mouseStretchRotate(e:MouseEvent):void { for (var i:uint = 0; i<rectArray.length; i++ ) { var radian:Number = Math.atan2(mouseX, mouseY + 1); var angle:Number = i * (720 / Math.PI * radian); rectArray[i].rotation = angle; rectArray[i].scaleX = mouseX * .005; rectArray[i].scaleY = mouseY * .005; } } private function init(e:Event = null):void { removeEventListener(Event.ADDED_TO_STAGE, init); createRectangles(); } } }Processing Code C# Code ActionScript Code Bookmark and Share More »Powered by Bookmarkify™
June 6 2009, 10:06am | Comments »
-
I posted to i-create.org
Google App Engine Takes Off
http://i-create.org/2008/06/09/google-app-engine-takes-off/
It is no secret that google has been working on a host of web services that will compete directly with Amazon Web Services. These web services are made for hosting applications that grow to very large sizes (if the application takes off that is). The users get 500mb of storage for free which is a decent start. When you combine app engine with Open Social you have the ability to use App Engine as a hosting service for applications that can be used in social networking sites. I would recommend you check out their App Engine Gallery to see some of the benefits of using the platform. One potential weakness is it’s lack of PHP support but I can’t imagine they won’t implement PHP support soon enough. Although that is not really a huge deal if anything it is an excuse to learn something new. If you haven’t looked at PureMVC now you have an opportunity to use it. You can go to their website read up on it and look at their examples here is a blog that uses PureMVC python on App Engine. If you do not wish to use PureMVC you could always go with Django. Both of these technologies utilize the Model View Control design pattern if you are not familiar with that design pattern I advise looking into it. Bookmark and Share More »Powered by Bookmarkify™
- Tags:
- Web 30
- Open Source
- App Engine
June 9 2008, 8:01pm | Comments »






