Archive for the ‘.NET’ Category
Darren David has posted a WPF animation kit to help bring it to Actionscript level of one line animation calls such as to packages like Tweener for Flash.
Essentially this kit helps to take most of the quirks out of learning animation in WPF early on and making it more like Flash code animation which is a requirement for anything like games, random, visualizations that have no limitations. I am happy to see this toolkit and more like it soon. It may help crossover but it also provides a base level platform that allows developers to ride and make solutions in either platform with similar syntax (hrm like the Java to C# toolsets). Good solutions are not only on one platform but this is only for WPF so far. Found via Zeh.
Adobe is throwing down $100 million in venture funding to companies developing tools with Apollo. Or more specifically the “Engagement Platform“ Is Adobe serious about making Apollo successful? I would say yes. It is both an excellent PR move and it shows their dedication to making desktop as proliferated at Flash on the web.
Microsoft is already using companies to push the Silverlight technology who are known partners and to direct competition with Flash and Apollo with WPF/Silverlight. Although Apollo is a cross platform desktop application wrapper for Flash its more than Microsoft currently has and blows away widget libraries of today.
Here’s a snippet from Niall Kennedy
Adobe has allocated $100 million towards investing in companies that enhance its engagement platform and is especially interested in funding Apollo companies. As of last month Adobe had invested in 6 companies, including word processing company Virtual Ubiquity. Companies might develop for Apollo to take advantage a strategic investment from Adobe at reasonable terms.
Apollo in its current form seems overhyped, but the cross platform development space will definitely look different in a year as we see new toolkits from big companies executed inside and outside of the browser. It’s not too difficult for a web application to pop out of the web browser and into a standalone web technology, and the marketing and investment dollars being spent by large companies such as Adobe and Microsoft should help boost the visibility of cutting edge web apps.
This was announced at MAX the Apollo/Flash9/AS3 funding effort. There were lots of interesting things going on in the vector app space and direct to browser desktop apps. Ray Ozzie added his points about the future of desktop apps in that winforms apps are dead…
If you are not familiar with the Gang of Four (GoF) patterns, there are many books and sites on the subject. These patterns are a set of logical designs that have been successful and provide a bit of arichtectural building blocks when considering the design of a framework or class library in .NET, Java, etc. They are largely influenced by OO and Java especially. Although these patterns you can see in many frameworks of today. These allow a communication of design so that understanding can be embedded into certain modules of a system.
Here is the list of dofactory.com (GoF site):
| Creational Patterns | |
| Abstract Factory | Creates an instance of several families of classes |
| Builder | Separates object construction from its representation |
| Factory Method | Creates an instance of several derived classes |
| Prototype | A fully initialized instance to be copied or cloned |
| Singleton | A class of which only a single instance can exist |
| Structural Patterns | |
| Adapter | Match interfaces of different classes |
| Bridge | Separates an object’s interface from its implementation |
| Composite | A tree structure of simple and composite objects |
| Decorator | Add responsibilities to objects dynamically |
| Facade | A single class that represents an entire subsystem |
| Flyweight | A fine-grained instance used for efficient sharing |
| Proxy | An object representing another object |
| Behavioral Patterns | |
| Chain of Resp. | A way of passing a request between a chain of objects |
| Command | Encapsulate a command request as an object |
| Interpreter | A way to include language elements in a program |
| Iterator | Sequentially access the elements of a collection |
| Mediator | Defines simplified communication between classes |
| Memento | Capture and restore an object’s internal state |
| Observer | A way of notifying change to a number of classes |
| State | Alter an object’s behavior when its state changes |
| Strategy | Encapsulates an algorithm inside a class |
| Template Method | Defer the exact steps of an algorithm to a subclass |
| Visitor | Defines a new operation to a class without change |
We will be writing samples of each pattern and real world usage. In actuality patterns are great and will make you understand programming architecture. However patters at times can be overkill and more deep than necessary and possibly cutting off junior level understanding. The dofactory rates patterns and their frequency of usage or usability. I think that patterns are very important but also a low entry point into code libraries is very important. Simple interfaces to the logical blocks like patterns is common in frameworks like the .NET framework or Java runtime.
Hardware 3D rendering…
One thing that might be interesting in the heating up battle of Flash vs Silverlight is rendering. Will Silverlight down the road provide hardware rendering support for 3d in Silverlight? If so Microsoft will have a compelling offering. Would Microsoft really want this with strong 3d capabilities built into a browser (goes against their console offerings, or maybe not in the end).
With 3d in the browser on two competing platforms that use hardware rendering we can make Raycasted donuts (yummy) oh and there could be a massive surge in the online 3d gaming market (especially the indie market).
It is up for grabs
But the problem is that Silverlight will also need to support OpenGL for other platforms (that do not run DirectX). If Adobe wants to win this maybe OpenGL 3d integration into flash will make it more cross platform. I know the developers on the papervision3d lists are all looking forward to better than software rendering in flash.
Who’s Directing Director?
But then this leads to another question, where does Director fit in all this, is it even part of the plan? Will Director and Flash merge to support this? Then what happens to the saturation of Flash in the market when it has more third party issues like Director? (and possibly less adoption director usually gets up to 50% to 60% saturation)
What exactly happened to Director in the plans?
Director is still the de facto standard in 3d web games, more on this soon. Director has been noticeably absent from all versions of Creative Suite (they are up to CS3 now without it). Buzz about it was happening in 2004-2005 but last anyone heard is it is still planned for released. The one problem with the Director development environment and community is that the IDE is clunky, the libraries and script (Lingo) is not as advanced as AS3 (the addition of Javascript to the capabilities was great but much of the community was Lingo) and the community is a ghost town (loads of broken links and pay xtras, its stuck in 2003-4). It was a great market before that, I think Adobe is letting it slip further and further away. If they wait too long Microsoft might add hardware rendering to Silverlight and then game over in owning 3d gaming on the web.
“Halleys Comet”
Here is a posting to macromedia.director.3d from Ritesh Banglani, Product Manager for Director and Shockwave. It was in response to a joke about him coming and going from the forum like Halley’s Comet…
Still here, guys. I cannot give an exact release date for the next version, but it will likely be towards the end of the year rather than the middle. The Shockwave Vista release (with DirectX 7) will be out sooner – in 6 weeks or so.
We will NOT upgrade the 3D feature set in the forthcoming Director release. Requirements like new platform support, performance and text engine enhancements are very urgent, and we don’t want to delay this release beyond 2007. However, we are committed to maintaining Shockwave as the leading 3D format on the web, and you WILL see 3D enhancements in a subsequent release. The move to DirectX 9 is a signal of our long term commitment to Shockwave 3D.
I know this is not the answer many of you are looking for. I appreciate your patience, and hope to keep the channels of communications open!
…
Currently this is the status of hardware supported 3d in WPF/E Silverlight.
WPF fully supports hardware rendering but Silverlight (cross browser) does not.
What features are missing from Silverlight presentation markup that will be supported in WPF?
Some high-end, Windows-specific features of WPF, such as real 3D, hardware-based video acceleration, and full document support, will not be supported in Silverlight. This is done on purpose in order to serve the Silverlight cross-browser, cross-platform reach requirements that demand a light-weight plug-in. However, Silverlight will offer a uniform runtime that can render identical experiences across browsers on both Macintosh computers and on Windows-based computers.
Here’s the first pageturn in silverlight. It runs pretty smooth.
Bubblemark has posted a 3d version of the bubble test in WPF/E which will just be called Silverlight now, that compares the new vector render engines Flash9/Flex, Silverlight and DHTML/Javascript.
Note: I think my processor just melted after this test.
Bubblemark has been kind to share the source.
“Silverlight”
Personally the names WPF and WPF/E and now Silverlight really didn’t make sense but Alexey Gavrilov puts a spin on it. Personally, the Blend, Expression, Slilverlight, WinFX, WPF, WPF/E, Live marketing is a total blitz but I just don’t know that its working much. Here is Tim Sneath’s take on the naming (he works on the project).
I like the technology though but sticking with only Windows Video (which does conform to a standard VC-1 that allows video to be played on mobile, directx and xbox but in a windows only world yes but) after FLV has really taken over it might be tough.
One thing is for sure the competition between Adobe and Microsoft on these vector tools and development environments will benefit the solution providers and developers who can learn both. DEVELOPERS! DEVELOPERS!
Adobe vs. Microsoft Vector Wars/Development platform heats up
Silverlight, formerly WPF/E, is a cross platform competitor to flash that launched today. The new name leaves something to be desired but this is a new technology battle over vector application for RIAs, interactives, 3d, games, etc.
The great thing about Silverlight is the use ot .NET and C# to code the interaction rather than Actionscript 3 in Apollo/Flex/Flash9. I like both languages but with a .NET language to code in flash this opens up the development of interactive to a whole batch of developers not into Flash.
Tools to Develop with Expression Studio and Silverlight here
One major glaring problem is that Flash won the internet video battle with FLV video but Silverlight only runs windows video.
All in all this is great news in that two of the biggest companies are going to be pushing Flash and Flash-like Silverlight, meaning mush more possible interactive work. Some are buying into the Microsoft vs. Adobe game but it just means better tools for smart developers that know how to leverage multiple platforms for their solutions. This usually leads to the best understanding of solution development when technology has your allegiance rather than a specific platform or company.
Here’s a nice XAML exporter for Illustrator that is pretty clean. Exporting from Illustrator to Flash or WPF can be tricky with the extra garbage that can be left or thrown out on export.
http://www.mikeswanson.com/xamlexport/
From the author Michael Swanson
For working with XAML files, Notepad is great; I use it almost every day. XAMLPad (from the Windows SDK) is even better. But neither of them are built for serious graphic design work. Most professional designers are very familiar with Adobe’s venerable suite of tools, and a large percentage of them use Illustrator. So, I decided to spend some time investigating what it would take to build a plug-in for Adobe Illustrator that exports to XAML. Well, like a lot of software prototypes, it just kept growing. And growing. And growing. Now, after spending more than a few evenings trying to re-learn the C++ I’d forgotten some five years ago (I love C# and managed code even more now!), I’ve ended up with a very useful tool.
The tool may be a little rough around the edges. This is my first attempt at an Adobe plug-in, and although I don’t expect it to crash Illustrator, who knows what can happen?
![]()
For a quick walk-through of the plug-in, you may want to watch this 25-minute Channel 9 interview.





