Well, all this makes sense. But... As I said before, we need to experiment with shape primitives a bit more before deciding which is the best way to incorporate them in the framework. A shape primitive is different from a face primitive in that it can have much more than 3 vertices, besides from containing different ways to concatenate them. Given that the engine is designed to work with tri-faces, this makes shape primitives come into conflict at particular situations. With this, I'm reconsidering a complete re-structuring of the branch right now. Perhaps an extension of the core face element that supports curved sides, I dont know... There is a lot to experiment before advancing, but the inflection point is close. An implementation like that would indeed be very powerful.
On Sat, Jan 17, 2009 at 6:37 PM, G. <[email protected]> wrote: > > Well, > > I started using 3D with Five3D, and I spent some times on the > different classes. I think Mathieu Badimon's philosophy on his > framework is actually the best and that it would have to be the > starting point of the developement of the branch, as you did. > > concerning the options, I think that the best solution would be to mix > the two : from one point keeping the Away3D chain and create/redesign > classes so the branch would be the closest possible to the > ActionScript API. > > Basically, and in regard to my experiments, and from a user's point of > view, I would see something like this: > > - making the actual Shape3D class become a Graphics3D class, I mean > giving it the same functionalities as the Graphics class. > - making a Shape3D class which would basically be a wrapper for vector > shapes, with x, y and z coordinates (and maybe rotationX, rotationY, > rotationZ, though it's not really important for a start unlike x, y > and z coordinates) > - making a Sprite3D class a part of the actual chain, but with the > ability to add Shapes and other Sprites as children, and maybe have > something like the actual Sprite class in the API: a graphics getter/ > setter (and Sprite being a mesh and not only a container would be the > best) > > with that i think that the branch would have a solid basis and the > maximum flexibility. I've seen during my experiments with the > TextField3D primitive that designing the text letter by letter first > opens to more possibilities (such as spotting an expression, or > changing some words' font, isolating some words/expressions and being > able to act on it as a group, like changing its z property or make > some rotations) and is also faster with less code (and drawing the > text content word by word is even faster but it reduces the > possibilities). > > what are you thinking about it? > > > Peace > G > > > On 17 jan, 19:52, Li <[email protected]> wrote: > > G, > > > > When I started designing the textfields branch, I tried to reproduce the > > Shape, Sprite, etc chain in the Actionscript API, but in 3D. Of course, I > > started by making it functional as simple as possible with the idea of > > extending it in the future so that it behaves just as that chain does. I > was > > inspired to do this by Mathieu Badimon's Five3D engine. It functions just > as > > the AS3 graphics chain... simple and beautiful =) > > > > So currently we have a few things designed that sort of work that way, > but > > not exactly. A lot of functionality is missing in regard of this chain > such > > as the ability of Sprite3D's to contain other Sprite3D's, etc. But before > > actually extending the branch to support these missing features, we are > > currently re-evaluating the core of the shape primitive in the branch: > We're > > currently thinking about 2 options: > > > > 1) Extend the branch by making more classes so that the graphics chain is > > reproduced more precisely or > > > > 2) Remove this chain and make the shape primitive be inherent in other > > Away3D classes. Away3D already has a chain for this with classes like > > Object3D, ObjectContainer3D, etc so it could be redundant to design a > whole > > new chain for elements that are based on shape primitives instead of face > > primitives... > > > > As you see, the branch is currently near the end of it's first > experimental > > stage. It is a good point to reframe it entirely and think about how it > will > > oficially merge with the main branch. There are however more expriments > to > > do... We are just begginning to understand the shape primitive, so a > little > > more experimentation before the official framework is built wouldn't be > bad. > > > > So, the points you make are very good G, and all this will have to be > > considered upon deciding the future of the branch... What are your > thought > > about all this? > > > > Cheers, > > Li > > > > > > > > On Sat, Jan 17, 2009 at 4:19 PM, G. <[email protected]> wrote: > > > > > Hey, > > > > > I was wondering if there was a way to make Sprite3D able to add other > > > Sprite3D as children (in additon to the ability to add Shapes3D)? I've > > > seen on a parent class that there is an addElement() method, but it's > > > no more reachable at Sprite3D's level > > > > > Second thought: maybe it would be interesting that Shape3D would have > > > x,y and z coordinates (it would permit for example to build words from > > > single chars by only doing some addChild instead of redrawing > > > everything) > > > > > On 16 jan, 22:12, Li <[email protected]> wrote: > > > > yeaaaah > > > > ;D thanks > > > > > > On Fri, Jan 16, 2009 at 4:11 PM, G. <[email protected]> wrote: > > > > > > > hey there, > > > > > > > that's pretty neat what you're doing with the shading material. > > > > > and yep the textfield branch is going to be really cool ;) > > > > > > > peace > > > > > > > On 15 jan, 21:40, Li <[email protected]> wrote: > > > > > > Cool G! > > > > > > > > I'm busy at the time developing more graphics stuff related to > > > primitive > > > > > > shape rendering, like shading materials, backface culling, fixing > > > sorting > > > > > > bugs, etc:http://www.lidev.com.ar/demos/textfieldsmaterials18/ > > > > > > > > I trust you will develop cool stuff on your end. So yey! Double > > > > > development > > > > > > speed for the textfields branch! > > > > > > > > cheers > > > > > > > > On Thu, Jan 15, 2009 at 3:47 PM, G. <[email protected]> wrote: > > > > > > > > > ok then, > > > > > > > > > meanwhile I will continue my developements as I will use these > > > classes > > > > > > > for my actual project, so I might add some new features etc but > > > I'll > > > > > > > keep you in touch when the time comes. > > > > > > > > > bests > > > > > > > G > > > > > > > > > On 15 jan, 12:26, Li <[email protected]> wrote: > > > > > > > > Cool, I'll take a look as soon as I can! > > > > > > > > Thanks!! > > > > > > > > > > On Wed, Jan 14, 2009 at 8:58 PM, G. <[email protected]> > wrote: > > > > > > > > > > > I uploaded a rar in the files section called > TextElementSrc.rar > > > > > > > > > > > keep me in touch and bon courage ;) > > > > > > > > > cheers > > > > > > > > > > > G > > > > > > > > > > > On 14 jan, 14:18, "G." <[email protected]> wrote: > > > > > > > > > > ok i prepare something for today > > > > > > > > > > cheers > > > > > > > > > > > > On 14 jan, 14:04, Li <[email protected]> wrote: > > > > > > > > > > > > > Hey G, > > > > > > > > > > > > > Awesome work!! Can you upload or send a working demo of > > > this > > > > > with > > > > > > > > > source? > > > > > > > > > > > I've got my own battle here with other topics in the > > > branch... > > > > > I'll > > > > > > > let > > > > > > > > > the > > > > > > > > > > > wishlist mature for a few days and take priorities from > > > there > > > > > while > > > > > > > I > > > > > > > > > solve > > > > > > > > > > > my current problem. Once I get to text handling be sure > I > > > will > > > > > > > consider > > > > > > > > > > > these suggestions. > > > > > > > > > > > > > Please send a demo =) > > > > > > > > > > > > > Cheers > > > > > > > > > > > > > On Wed, Jan 14, 2009 at 10:52 AM, G. < > [email protected]> > > > > > wrote: > > > > > > > > > > > > > > ok I just discovered the place to upload files on the > > > group > > > > > ... I > > > > > > > > > > > > really should sleep more ... anyway you can find the > rar > > > in > > > > > the > > > > > > > files > > > > > > > > > > > > section. > > > > > > > > > > > > keep me in touch > > > > > > > > > > > > G > > > > > > > > > > > > > > On 14 jan, 12:30, "G." <[email protected]> wrote: > > > > > > > > > > > > > well, seems that I still can't send things to your > > > email > > > > > ... > > > > > > > > > > > > > > > On 14 jan, 03:15, "G." <[email protected]> wrote: > > > > > > > > > > > > > > > > I'm sorry I might have been too tired, but in the > > > > > > > TextField3DG > > > > > > > > > class, > > > > > > > > > > > > > > in the initVars method, you have to change the > > > conditions > > > > > > > with > > > > > > > > > that > > > > > > > > > > > > > > one: > > > > > > > > > > > > > > > > if (init && init.textSize) _textSize = > init.textSize; > > > > > > > > > > > > > > else _textSize = 20; > > > > > > > > > > > > > > > > if (init && > > > init.letterSpacing) > > > > > > > > > _letterSpacing > > > > > > > > > > > > = > > > > > > > > > > > > > > init.letterSpacing; > > > > > > > > > > > > > > else _letterSpacing = 0; > > > > > > > > > > > > > > > > if (init && > init.lineSpacing) > > > > > > > > > _lineSpacing = > > > > > > > > > > > > init.lineSpacing; > > > > > > > > > > > > > > else _lineSpacing = 0; > > > > > > > > > > > > > > > > if (init && > > > init.paragraphWidth) > > > > > > > > > > > > _paragraphWidth = > > > > > > > > > > > > > > init.paragraphWidth; > > > > > > > > > > > > > > else _paragraphWidth = > 1000; > > > > > > > > > > > > > > > > I forgot the case where init would be null > > > > > > > > > > > > > > > > cheers > > > > > > > > > > > > > > G > > > > > > > > > > > > > > > > On 14 jan, 02:03, "G." <[email protected]> > wrote: > > > > > > > > > > > > > > > > > Hi again, > > > > > > > > > > > > > > > > > did some tests tonight, and gone into the path > I > > > wrote > > > > > > > about > > > > > > > > > lately, > > > > > > > > > > > > > > > so here's what I've done: > > > > > > > > > > > > > > > > > - made a class Char3D which extends Sprite3D > and > > > > > creates a > > > > > > > > > single > > > > > > > > > > > > > > > character. > > > > > > > > > > > > > > > - modified TextField3D (actually I made another > > > class > > > > > so I > > > > > > > can > > > > > > > > > keep > > > > > > > > > > > > > > > the original safe ^_^ ) which now extends > > > > > ObjectContainer3D > > > > > > > > > (not sure > > > > > > > > > > > > > > > it's a good choice) and which basically creates > the > > > > > text by > > > > > > > > > creating > > > > > > > > > > > > > > > single characters and then placing them (with > some > > > sort > > > > > of > > > > > > > > > native > > > > > > > > > > > > > > > wordWrapping). > > > > > > > > > > > > > > > - I kept mostly all the original getters (font, > > > > > textSize, > > > > > > > > > > > > > > > paragraphWidth etc), and added a numLines one, > > > maybe > > > > > useful > > > > > > > > > though > > > > > > > > > > > > i'm > > > > > > > > > > > > > > > not really sure. Also added the extrude > methods. > > > > > > > > > > > > > > > - I renamed the words array in glyfs (don't > know > > > why > > > > > > > actually > > > > > > > > > but I'm > > > > > > > > > > > > > > > too tired to guess), and it now inexates the > single > > > > > chars > > > > > > > (so > > > > > > > > > it's > > > > > > > > > > > > > > > possible to get their x,y,z coordinates) > > > > > > > > > > > > > > > - I added a method to highlight some words with > > > > > different > > > > > > > font > > > > > > > > > and/or > > > > > > > > > > > > > > > color. So it's possible to choose any > expression > > > inside > > > > > the > > > > > > > > > text and > > > > > > > > > > > > > > > make it in another font and/or color. > > > > > > > > > > > > > > > I also wanted to try to add some TextAlign > features > > > > > > > (center, > > > > > > > > > right, > > > > > > > > > > > > > > > left) and/or make the texte centered natively, > but > > > you > > > > > tell > > > > > > > me > > > > > > > > > if > > > > > > > > > > > > it's > > > > > > > > > > > > > > > really useful. > > > > > > > > > > > > > > > It's not totally optimized yet, though I think > I > > > have > > > > > > > gained > > > > > > > > > some > > > > > > > > > > > > > > > milliseconds in the text's creation (but it's > only > > > > > relevant > > > > > > > on > > > > > > > > > big > > > > > > > > > > > > > > > texts I guess) > > > > > > > > > > > > > > > > > tell me what you think about it (i'm trying to > send > > > the > > > > > > > stuff > > > > > > > > > via > > > > > > > > > > > > > > > yousendit, hope it will work this time) > > > > > > > > > > > > > > > > > cheers > > > > > > > > > > > > > > > G. > > > > > > > > > > > > > > > > > On 13 jan, 18:44, "G." <[email protected]> > wrote: > > > > > > > > > > > > > > > > > > Cool that my idea seems interesting. > > > > > > > > > > > > > > > > > > About the help, I'm agree with you, so I will > > > start > > > > > > > > > experimenting > > > > > > > > > > > > some > > > > > > > > > > > > > > > > ideas and some modifications and if something > > > good > > > > > comes > > > > > > > out > > > > > > > > > of it > > > > > > > > > > > > I > > > > > > > > > > > > > > > > will show you so you can check and validate. > I > > > will > > > > > try > > > > > > > the > > > > > > > > > > > > container > > > > > > > > > > > > > > > > idea for a start and maybe some > > > > ... > > > > plus de détails »
