Flash Player 10 prerelease available http://labs.adobe.com/technologies/flashplayer10/
Key new features:
3D Effects - Easily transform and animate any display object through 3D
space while retaining full interactivity. Fast, lightweight, and native 3D effects make motion that was previously reserved for expert users available to everyone. Complex effects are simple with APIs that extend what you already know.
Custom Filters and Effects - Create your own portable filters, blend modes,
and fills using Adobe® Pixel Bender™, the same technology used for many After Effects CS3 filters. Shaders in Flash Player are about 1KB and can be scripted and animated at runtime.
Advanced Text Layout - A new, highly flexible text layout engine, co-existing with TextField, enables innovation in creating new text controls by providing low-level access to text offering right-to-left and vertical text layout, plus support for typographic elements like ligatures.
Enhanced Drawing API - Runtime drawing is easier and more powerful with re-styleable properties, 3D APIs, and a new way of drawing sophisticated shapes without having to code them line by line.
Visual Performance Improvements – Applications and videos will run smoother and faster with expanded use of hardware acceleration. By moving several visual processing tasks to the video card, the CPU is free to do more.
I also heard rumors that it will support typed arrays... which I would be ecstatic about!
fatbuoy1- 05-15-2008
Ooo ligatures :D
whats a typed array?
bigmac- 05-16-2008
Confirmation: typed arrays have been added to FP10. They are a new data type called a Vector.
What is that? Well, you know what an array is... it's a collection of values that are indexed numerically. Refresher:
var arry:Array = new Array("hello world", true, 297);
trace(arry[0]);
// --> output: "hello world"
Well, a vector is like an array except that is restricts all contents to a single data type. The above array example would be an invalid vector because it contains a string, a boolean, and an integer, which are non-matching type values. A Vector would look like this:
var vct:Vector = new Vector("hello", "lassie", "world");
The above vector would be valid given that all values are strings, although I can't guarantee that my example is written correctly since they haven't released official documentation yet. Cool stuff though... this may seem like a trivial feature, but it's not. For as many times as you need to set up an array to store non-specific values, there are equally as many times when you need to set up an array as a queue to handle the creation and management of specific objects, at which time you never want other types of data to get routed into that collection. This new data type will add compiler validation to make sure you haven't placed something in the wrong spot.
Shofixti- 05-16-2008
You know, Normally i just skip over or breeze through the Tech Talk here...
But I think I actually understood that...
bigmac- 05-16-2008
We'll make a techy out of you yet :twisted:
Shofixti- 05-16-2008
I understand (I Hope) that they are used to store variables or strings for later use...
But is it possible to store this kind of information on a database or server? I've developed an interest in basic Online Multiplayer Flash Game development as of late... But don't even come close to having the knowledge to handle that... This kind of basic variable storage sounds like a good place to start.
bigmac- 05-16-2008
Good question, although no: arrays and vectors are not what you're after. These are run-time data structures, meaning that they're constructed and exist within active memory only while the program runs. Memory is fushed (or at least it's SUPPOSED to be) when the application is not active. Apps that don't flush their memory correctly cause those infamous "memory leaks"... and even then, the leaked memory is not salvagable for later use by the application (it's just wasted memory that is tied up until your computer restarts).
So, what you're after is an archival method which will allow your data to be saved to a file so that it can be loaded back into memory for later use. A data base is the most common solution for this, though it requires a special server running something like MySQL in order to provide the file service. You can also use an external service like PHP or adobe AIR to recieve data from Flash and write it to a file. I'm using PHP for Shepherd's file-write capabilities. The only flash-native file write mechanism is a Flash Shared Object, which allows you to basically leave a cookie of searalized Flash data on the host's local machine. This is handy for storing small snippits of data, but it is pretty limiting as a full-blown file-write solution.
Now I am slightly surprised at this. Before I had heard of vector graphics, the word vector had come up once (well in on instance, but many times) before in my life, programming C++. So personally I am surprised they are just releasing vectors in flash.
From what I remember, which since it's been 10 years isn't very accurate, I believe, Greg, an integer is required for the variable to know how long the vector is.
Now that I have finished all the classes for my bachelors in Mathematics, I've heard the term vector WAY too many times.
*edit* according to my C++ book, the reason it's called a vector is because it comes from the math term, which has a magnitude and direction. So it would make sense that a vector would have a size and a direction (item 0 ---> vector size).
*disclaimer* that is all for C++ so may not relate to flash at all
bigmac- 08-15-2008
As I understand C++, you have vectors and arrays. Vectors have a fixed length and are a linear list of actual values, whereas arrays are a non-linear that you can assign specific indexes within (for example, you can define item 100 within an empty array, whereas a vector would require 100 items in order to have that slot available).
ActionScript has an identical version of the Array datatype. However, the C++ vector type has never had an equivalent. And even with the release of Flash Player 10, it will STILL have no equivalent. The Vector data type in Action Script will have a different purpose: it will behave exactly like an array, but will restrict the Array's contents to only accept a single type of data (ie: numbers, strings, movieClip references, etc). Now here's the mind blowing part... the syntax:
var vec:Vector = Vector.<int>(<1, 23, 42>);
Weird, they're using XML to type the data. That's a total stray from the rest of AS3's rigid syntax consistency, however it does make sense. We're basically just dressing an array in a Vector suit through means of object decoration.
Forumer™ is Voted #1 Free Forum Hosting provider
Build your own community today with the largest message board hosting company.