Online Advertising, Web Development & General Rantings

Entries categorized as ‘Technology’

Live Messenger done with Silverlight 2.0

March 5, 2008 · 3 Comments

Sub Heading 4

In this series of post’s I will rebuild the Windows Live Messenger as a Silverlight 2.0 application. This is going to be a great project to build using the Silverlight 2.0 stack as most of the components required for this application can be found in the new features of Silverlight 2.0 beta.

So why am I choosing to build Live Messenger in Silverlight 2.0 beta? And why messenger?

Messenger despite the simplicity of what it does is an extremely complex application. It has this social aspect to it that in its current state just does not take advantage of. The current Live Messenger can be so much more, and my goal is to build out messenger to realize it’s full potential. Using some new features in Silverlight 2.0 beta I feel like I can truly elevate Messenger above what it currently is to something truly amazing.

Categories: Blend Candy · SilverLight · Technology

Silverlight & WPF, what it means to me!

March 4, 2008 · 3 Comments

subheading 2 

When I approach learning new technologies, such as Silverlight & WPF, the first thing I ask myself is “What problem is this new technology trying to solve!”. When I’ve found my answer to that first question I then ask myself “How is it solving this problem”. So let’s try to find out what problem Silverlight & WPF is trying to solve.

Categories: SilverLight · Technology

Announcing Tweener for Silverlight

February 28, 2008 · 7 Comments

subheading 3

As promised my friend released the managed source code for Tweener.

I’ve personally been using this library and have a dozen or so demo’s that arn’t quite ready for release for another week BUT the demo’s Michael’s done are very informative and show’s off just how easy it is to use.

Check out his post and download it today… It’s for Silverlight 1.1, read my previous post, in the comments section, for javascript version. A version for Silverlight 2.0 will be launched soon after Mix08 .

 Good times ahead :)

[click on picture to be taken to his post for more details] 

Tweener for Silverlight

Categories: News · SilverLight · Technology · Tweener

Just Beautiful - WorldWide Telescope

February 28, 2008 · 3 Comments

 WorldWide Telescope

[Click the picture to view the TED video of this amazing application] 

I can’t remember when I last felt this emotional. This application will truly change the world!

Now I have to wait till Spring 2008 to experience this…. :(

Well done Microsoft Research and all those involved this is truly awe inspiring stuff!

Categories: Lifestyle · News · Technology · WorldWide Telescope

We need to learn from Flash!

February 27, 2008 · 16 Comments

Sub Heading 5

I can sum up in 3 points why flash, to me, is amazing

1. Rich feature set - it’s currently at version 9, just imagine all the cool things that it must have because it’s 9 versions old. It’s had 9 versions to grow out it’s features, Silverlight has only had 1. [thanks Michael for making me reclarify this point]

2. Papervision - this open-source library exposes amazing functions that let’s you build truly captivating experiences in 2D & Fake 3D. Think Cover-flow :). If you don’t know about Papervision do a live search on it, this library is amazing.

3. Tweener - this open-source library let’s you build animations in a consistent way that is manageable. From experience a simple application may require hundreds of animations, one word comes to mind “Messy”. This tweener library brings order to this chaos! If you don’t know what tweener is do a live search for “flash tweener” and read up on it, it’s really amazing.

In my personal opinion if we Silverlight developers/designers are to build amazing, captivating applications we also need all 3 tools above.

So what is Microsoft doing regarding the 3 things above? I searched far and wide and this is what I found…

image

Categories: News · SilverLight · Technology

Blend Candy: How to create a Gold and Sparkly effect

January 26, 2008 · 11 Comments

Sub Heading 5

In this post I’m going to get creative, I’m going to create something shinny and sparkly. 

Recently I saw a great adobe Photoshop tutorial showing how to achieve a “gold effect“.

I wanted to try to re-create that same gold effect using Blend. I also wanted to go one step further and show off the power of SilverLight in that I wanted to animate the graphic, taking it from a static image and transforming it into an amazing user experience. (could you imagine if adobe Photoshop assets could be animated using it’s raw elements, imagine being able to change the lighting effects or the intensity of the gold etc.). SilverLight and Blend allows us Microsoft developers to do just that :)

Bare with me as I try to explain what I’m going to create ….

I’m thinking of creating a top banner/header for a RIA or web site. I’m thinking it’s going to consist of a logo/title on the far left and a rotating marquee of messages on the right…

This post will only cover the title/logo part, the Rotating Marquee can be seen in the sample code but I will not cover it here.

image

STEP 1 : GOLD SHINNY TITLE

Using a simple TextBlock spell out the title of your application.

image

image

Next give the TextBlock a “Foreground-Linear” gradient brush. And setup several gradient stops with the following values:

image

image

This is the magic that will give the text that GOLD look.

image

Note: Playing with the gradient stop values you can achieve an amazing assortment of effects from silver to metallic copper to neon pink etc. Over time I plan on building up a library of gradient stop values for specific effects. This gold one is the first of them :)

Next let’s duplicate this TextBlock and make it the shadow of the text. Make sure it sits above the previous layer (that we just finished) so that it appear’s behind it as a true shadow does. And give this a simple linear gradient that will make it look like a shadow (play with the colors to make this happen). I’ve included my settings but really you should play with the colors and create it yourself just to get experience.

image

image

image

image

If you combine both the title layer and the shadow layer you get the following result. It’s nowhere near finished but it’s starting to take shape..

image

Next let’s add some glass effect. To do this we are going to create several new TextBlock’s , one for each letter in the title. The reason we need to do this is because we want to align each glass effect letter to the title layer. Confused? Just check out the picture, for demonstration purposes I’ve only shown the “B” however all the other letters can be seen in the included source code.

image

Note that the canvas “canGlassEffects” has an opacity of 18% which gives the “B” and all the other single letters the transparent appearance.

image

The “B” is just a copy of the Text layer but only with the text “B”. It also has the two gradient markers calibrated differently so that the dark center line coincides with the top text layer’s dark middle line. (see following pictures)

image

image

When you combine all the layers now you get the following. Again it’s getting closer to the effect I want but still a bit to go….

image

Next I’m going to give the title a nice dark background “Rectangle”  with a linear gradient brush. It’s just a simple backdrop that will showoff the gold title. Note the gradient stops of the background that give the line down the middle effect, this line needs to coincide with the line through the gold title above.

image

image

image

image

 Now combining all the layers again we get the following…

image

That’s definitely the gold finish I was after.

STEP 2: FAKE LIGHTING 

Let’s add some fake lighting to this title. To do this I’m going to use ellipses with circular-gradients scattered around the title.

image

image

image

image

Notice from the pictures above that it has 2 gradient stops (each with custom alpha’s) and the overall opacity is set to 17% so that it sit’s transparent over the gold title text.

image

The above picture shows only 1 fake light. For the sample I created 4 , here’s what they look like … 

image

When you combine all the layers now you get the following:

Before fake lighting:

image

After fake lighting:

image

Remember that the opacity on the rectangles as well as the custom alphas on the gradient stops gives it that transparent look. The power of SilverLight allows me to programmatically change these alpha’s and opacities, the result can be seen in the animated sample at the end. SilverLight is truly an amazing development and design environment to work in!!!!

The fake lighting using different settings for the alpha’s and opacity:

image image image

STEP 3: TWINKLE’S

Gold sparkles! So how can I create the effect of a sparkle? Simple …

Create a star shape using the Pen tool

image 

image

image

image

image

Note that it has a radial gradient and that the alpha’s (offsets) are set to give it a transparent effect when overlayed over the gold text.

image

Duplicate this path 2 more times making sure that each has a different rotation to give the following effect

image

image

Now make this into a usercontrol, I’ve called mine ucTwinkle. The reason I want do this is because I’m going to add an animation to this control that will make it “twinkle” and then I’ll dynamically scatter them over the gold text.

image

I won’t show the actual code for the Storyboard however it does the following

a) It changes from invisible to visible using the opacity setting

b) scales from a very small size to a large size using a scale transform

Below is a sample of the animation in pictures. To see the actual glitter effect go to the sample animation at the end of this post.

image

image

image 

I’ve captured some snapshot’s of the animation when various twinkles are appearing. You’ll need to look very closely to see the twinkle!

image

image

image

The actual logic to dynamically show the twinkles can be seen in code, it would be faster for you to checkout the code logic than for me to explain it. Maybe I’ll do it in some future posting, what I will say is that it use’s the concept of a game loop to trigger the twinkle’s and what determines if a twinkle runs is a random number.

Conclusion:

The sample SilverLight application can be seen by clicking the big blue button below. The above steps are just simple techniques that if mastered can be customized resulting in an endless number of visual effects. Instead of Gold you can make it silver, make the glow more neon and futuristic. Your imagination is all that limits you. SilverLight in it’s current version in my opinion is feature rich, it’s really up to you the designer/developer to work out how to do something with the tools available to you!

When I see a visual effect that I like I don’t care if it was created with adobe Photoshop. I immediately start envisioning how to go about creating it in Blend and SilverLight…. If you really like an effect then you’ll work out how to achieve it!

As always the code can be downloaded from my skydrive account:

BeautifulMarquee.zip

You can run the sample from here:

As always please keep sharing what you can, we’re all still learning how to use these wonderful toys!

Categories: Blend Candy · SilverLight · Technology

"Colour the World" - my version of an iPod Touch Colour Picker done with SilverLight

January 11, 2008 · 10 Comments

Sub Heading 5

 

I shouldn’t have to tell you of the importance a great colour scheme has on the success of your application or web site.

To create that amazing user experience you have to have a great UI and one of the most important ingredients to a great UI is having a perfect “colour palette”.

Conceiving a perfect colour palette is an art form, great artists devote there whole lives to the study of colour (amongst other things of course).

I am not an artist, and my colour theory is shockingly poor.

I actually cheat when it comes to my colour palettes…  I use

1) Adobe’ Kuler - a RIA flash/flex application that helps you create a good colour palette with virtually no understanding of colour theory.

image

2) ColourLovers.com - a web based community that specializes in a colour palettes and patterns as well as the community around the palettes. They also have a javascript colour picker called Copaso, brilliant application.

image

Kuler also has community features but it is not as lively and involved/fun as ColourLovers.com. My preference is ColourLovers first then Kuler a close second.

I use both to conceive my colour palettes, BUT today I’m going to embark on creating my own colour picker and  palette community. I want to learn the theory behind RGB and Hue/Saturation/Brightness. I want to be able to look at a colour picker and know what those values actually mean.

I want to build this colour picker in such a way that it will look amazing on Apple’s iPod Touch or iPhone. I’m hoping that one day SilverLight will work on an iPhone or iPod Touch (here’s to wishful thinking)

Great Sample that got me started

 The fist step is to see what other’s have done. There is a brilliant sample that gave me most of what I needed to know regarding RGB (Red Green Blue) HSB (Hue Saturation Brightness). The “Scribbler” sample had exactly what I wanted in it for learning the in’s and out’s of basic colour pickers. I can’t find the link to the sample but if you “Google” it or “Live” it then you should be able to find it again. If you can’t shoot me an email and I’ll send you the copy I have.

Colour the World - SilverLight RIA

“Colour the world” is the name I’ve decided to give this SilverLight RIA.

I want to create a colour picker that has dynamic resizing so that it can scale to the size of an standard desktop application or an iPod Touch screen. (The version of my sample demonstrates this ability but the resizing is not 100% perfect)

Also the design of the screens are meant to compliment apple’s iPod touch, in that it has minimum clutter on the UI only showing the bare minimum that it can get away with.

Here are the screen shots of my SilverLight colour picker… It’s only the first version so expect it to have heaps of bugs and for it to change over time.

[screen 1 is the main colour picker screen]

image

[screen 2 is the details screen, shows the RGB/HSB information]

image

[screen 3 is the "save screen", let's you save it to the community where others will be able to use it or comment on it]

image

[screen 4 is the "community screen", let's you see what other palettes people have saved. Other than showing what others have saved it really is just a view of palettes, over time I will build out this communityh to allow for comments. For the demo purposes it will suffice]

image

[screen 5 is the same application but shown in a resized format, just resize the browser to play with it. As I mentioned earlier it isn't perfect but it will do for the demonstration]

image

Click the following image to play with the demonstration. You need SilverLight 1.1 to run it.

As always’ the source code for this SilverLight Application is free. Currently it sits in a very messy state, but still readable. It needs a lot of refactoring, I’ll save that for the next version (hopefully after SilverLight 2.0 is released).

Source code: My SilverLight Colour Picker Source Code “Colour the World”

You can find this in the “A Beautiful Website” section of this site, over time I may move it into it’s own area but for now it will sit there!

  

Conclusion

This was my first foray into the world of colour theory and I have to admit I’m loving it. “Colour the World” is a project I envision continuing to update over time,  ultimately adding new features that will rival those of “ColourLovers” and Adobe’s “Kuler”. I do this not because I want to compete with them BUT because it’s a great learning experience for me.

What amazes me is the ease at which I created this application using C# and Blend. This new world of SilverLight is really going to be huge, applications of the future are going to be immersive experiences that really captivate the visual senses. I can’t wait to see what other’s build !!! 

Please leave comments on what you think of the RIA, also remember to share what you can :)

Oh and if you like the article or application feel free to kick it  :)  kick it on DotNetKicks.com

Categories: Blend Candy · Projects · SilverLight · Technology