AltME groups: search
Help · search scripts · search articles · search mailing listresults summary
world | hits |
r4wp | 28 |
r3wp | 864 |
total: | 892 |
results window for this page: [start: 701 end: 800]
world-name: r3wp
Group: Ann-Reply ... Reply to Announce group [web-public] | ||
Maxim: 27-Oct-2010 | in the current stat of the host-kit and rebol architecture in general: --------------------------- 1) I cannot use data, since that is being used by r3_gui.r3 so it has in effect become a reserved word which we can't use. 2) if I use gob/draw, then I am in fact trying to hijack the meaning of draw gob... an AGG draw block. 3) the current gob! API is very limited because it was shrunk to handle a very specific use case. I can't really play around with anything cause it just breaks up real quick (I tried). 4) the CGR API doesn't have a scene dialect yet, but that is just high-level use. if you look at the code, its 4 lines of code to have an openGL high-rez model viewable in a window... I hardly consider that bloat. 5) using commands to manage a real life scene with several thousand animated, deforming objects and scene changes, is a nice dream. it doesn't work in practice since just managing the thousands of blocks this requires ends up eating a way a sizeable part of the CPU and ram. 6) data marshalling is heavy, REBOL datatype access is heavy, datatypes use A LOT of ram, and the GC is extremely intrusive, CGRs solve all of this while still making the high-level interface easy as pie. 7) primitives are more than just dead weight they allow direct access to/from rebol and the CGR itself. they are the *low* level interface which can be used directly or directed by the use of a dialect later. the difference from AGG is that these structures are persistent for many reasons, which will be much clearer in the future. 8) CGRs are not only for 3d graphics, but for any rendering. primitives are a generic container to access/construct any rendering engine in the same way. ie. all CGR will use the same core cgr dialect. 9) the code does support multiple cgr gobs, but it might have bugs... I didn't even try it yet... I was busy getting this stable and released asap. 10) The opengl-cgr currently doesn't integrate into the view compositing, since that instantly *kills* rebol. I mean... totally. 500x500 a 30fps... = 100% cpu just blitting graphics (not even opengl rendering). opengl-cgr uses the container mode, which actually uses up a sub-window (like every single construct in windows) and allows system double buffering in that area. 11) CGRs are compatible with all other gobs, though they must be built to support the internal gfx pipeline by using the compositor or image rendering modes. That is how I started and it was quickly obvious how un feasible it was for opengl. 12) rendering performances ARE very implementation specific. using show instead of cgr-refresh on the display loop will show a performance penalty anywhere from 10-1000% (depending on nested gob depth & size). If I didn't create internal data for the models, the large tree example would run much slower, if I used commands to call every opengl call in the large tree example, it would likely take several seconds a frame even with hw support. in the future: ---------------------------- -there will be (hopefully) a small number of changes to the host-kit which will allow 1, 2, 3 to be resolved in a more natural REBOL feel... this current implementation actually highlights those needs and you where quick to point them out :-) -concurrency requires a bit more sophisticated structures to prevent locks, using the current design I solve some (though not all, yet) of the requirements for true concurrency, and this directly relates to issues and/or decisions in 5, 6, 7 & 8 -my goal is to have a high-performance rendering engine which isn't bound by any inherent design incompatibilities between REBOL and optimised native code, especially if the engine has access to hardware in parralel to the interpreter. when i look at all the current games out there and they slow down even using only compiled code and sometimes not even really complex scenes, I don't want to fall into the trap of adding an additional layer of slowness which is to have the interpreter doing the renderer's job. -I'm not trying to make a "cool" rebol plugin... I am trying to make an engine which is optimisized to run within REBOL. the idea being not to help out rebolers per say, but to attract people with rendering needs TO REBOL because it has a high-perfomance engine *built-in* to which you can graph any actual renderer (DX, OpenGL, video frame buffers, etc). -did I mention I want to make an AGG CGR ? ;-) | |
Cyphre: 28-Oct-2010 | Hey Maxim, just a quick reply... re 1) IMO that is not good argument. You can use GOB/DATA. It is really easy to change R3GUI rather to change GOB datatype. re 2) Nope. There is no problem to have the current GOB/DRAW dialect for 3D commands. The current DRAW is completelz flexible and can be enhanced. Also if you are proposing abstracted way for 'renderers' then it shouldn't matter if you are rendering 2D or 3D objects so no need to have different dialects just because of 2D or 3D behaviour (see the OpenGL api, it is also mixed) re 3) not sure what you are missing on the GOB! datatype..Can you clarify? re 5) I disagree here: the 3D dialect is way to go. It should be possible to do a direct commands calls for simple things and use vertex arrays and other advanced features for bigger things. I don't see any problem why this couldn't be done by command dialect. re 6) to 12) and the rest: I'm not trying to make a cool" rebol plugin..." - so I hope you won't propose this Carl to put into the official HostKit distro :-P The more you talk about your design the more it looks you are missing the point of Rebol need for HW acceleration in more generic sense. Don't take it personally, but your approach looks like just yet-another-opengl binding extension that every other language have. Until that I thought you are planning to do it in a more 'rebolish' way but nevermind, at least it is clear now. In any way I wish you good luck with your extension! ;) BTW I think It's time to dust off my OpenGL accelerated R3 prototype soon... http://cyphre.mysteria.cz/tests/agg-hw.png(And it will work on *all* gfx cards made in the last 5 years ;)) | |
Maxim: 17-Jan-2011 | It will seamleslly integrate to my Custom Gob Renderer so the same GLASS style will be able to render in any renderer for which a compatible style was built. this means the same layout and interface for a button will be useable in a normal AGG render up to a 3D game representation of that button, with no user code change. just a swap in the skin being used. | |
Group: !AltME ... Discussion about AltME [web-public] | ||
Maxim: 29-Oct-2010 | something like REBOL3! low-level gfx could be ok, note this isn't about discussing how to use view or a gui. this really is for talking about rendering, graphic pipelines, agg C code, gfx engines, CGRs, stuff like that. | |
Group: !REBOL3 GUI ... [web-public] | ||
Pekr: 6-Jan-2010 | I just found Henrik's summary. I think it is the post I had in mind: --------------------------------------------- Indeed VID3.4 is far from done. You can probably use it for a few things, like getting a name from a user in a text field or submit a very simple form, but not much more than that. To reiterate the state of the UI: - No unicode yet in graphics (when Cyphre gets around to it). - Resizing acts like a drunken sailor. (Carl) - Skin is not published. (Me) - Style tagging is not implemented. (Carl) - Reasonable requesters are not yet implemented. (Carl or me) - Layers are not yet implemented. (Carl) - Guides are not yet implemented. (Carl) - Better font rendering. We are not taking advantage of what AGG can do. (Cyphre again) - Event system is from Gabriele's VID3. (Carl) - Many features are untested, like drag&drop. (Me, I guess) - Proper material management for skin. (Me). - Many styles are not implemented, especially lists (Me). - More elaborate animation engine (Carl or Me). - Form dialect (Carl talked about this). - More/better icon artwork (Me). Plus, Maxim has some ideas for DRAW, to greatly speed up rendering, but I don't know if they can be implemented. The overall design of the GUI engine is very good. Whenever a change or addition is made, you alter 3-5 lines of code in one place, and it works. I doubt the entire engine will be rewritten. You won't see GUI bug reports in Curecode for a while. There could easily be 2-300 reports, once we get to that point. My work regarding skins is rather big: I need to work out the basic styles first, so we have a reasonable way to build compound styles. These are being done using a very simple, but pixel accurate GUI using plain colored surfaces. This is easier for testing out, as draw blocks are small, but as Pekr likes to complain: They are not pretty to look at. Once the real skin goes into place, the draw blocks will grow a lot. I would love to see a low-level GOB management dialect, like Gabriele's MakeGOB. | |
Pekr: 8-Jan-2010 | I digged following from Max in the past: --------------------------------- My pet peeve about R3 view is that we still don't have access to the actual AGG elements directly within rebol. We still have to go through a clumsy interface called draw dialect. The dialect is fine (great actually) for initialisation, but after that, its not adapted to actual manipulation of what is going on inside, you have to go trough a rebol -> agg convertion stage at each refresh. It's not the speed, it's the fact that it's complicated cause you have to create "virtual" draw components and then assemble them on the fly reducing blocks and stuff. I'd love to be able to do: a: draw [circle 30x30 15] a/radius: 30 a/offset: 100x100 show a If graphic elements where first class datatypes, we could completely ignore the gobs, and build real canvases, uber fast. Another example, more appropriate: ; this draws a box... draw [s: polygon 10x10 30x10 30x-30 10x-30] ; make it a house outline insert at s/vertices 4 20x-40 ; raise the "roof" s/vertices/4/y: -50 The problem is that to edit draw blocks, you have to create a slew of things before creating the draw block, then you have to store references to all of those things somewhere, everytime you want to add a "dynamic" attribute its pretty tedious. The first-class gel datatype would allow AGG to edit its internals directly using binary C code through its accessors. no need to go through rebol funcs and reducing blocks, etc. The use of "show a" above could intrinsincally know that it only needs to refresh the region that this element affects, just like all graphic cards do when evaluating the graphic pipe rendering. So many things like flash games which become soooo heavy in AGG would be real-time and use much less CPU resouces. in most games only a small part of the canvas really changes interactively. | |
Pekr: 8-Jan-2010 | Max continuead a bit: ---------------------- part of what I want to attempt for my host code work is to implement liquid and globs natively in R3. with access to AGG I could build the single most powerfull canvas engine in any language... we'd have absolutely nothing to envy to ANY other language, not even Apple's engine... as long as the AGG can render a few more things and add filters to AGG strokes. globs use AGG and allow events to be sent to individual AGG strokes. so you can "slide" a single line by clicking on it. the cool thing is that the input mask and display are separate... and you can implement any number of layers per display element that you want. | |
Henrik: 19-Jan-2010 | I would assume that would simply be an extension of the rich text dialect and exposing more options from the AGG font renderer: [hint 1 "abc" hint 0.8 "def" hint 2 "ghi"] | |
Cyphre: 19-Jan-2010 | Pavel, yes, you are right. We switched the terms in the discussion above. I've been mainly refering to this informaiton: http://en.wikipedia.org/wiki/TrueType#Hinting_language AGG have kind of font manager module. The font manager basically takes vectorial glyph data (which are provided by Win API or FreeType lib, quartz etc.) then the glyphs are converted to scanlines and stored in font cache... So this way we are depending on the vector glyph data provided by platform specific font frameworks. The problem lies in the fact the hinting language(see link above) is patented by Apple so it is not possible to get the correct font glyph data without breaking the patents (or paying Apple). That's the reason why fonts on Linux or FreeType based platforms can't look so nicely hinted as on Windows/OSX. | |
shadwolf: 20-Jan-2010 | cyohre i noticed the glyph engine years ago in AGG C++ version and i asked at that time why that wasn't existing in view adaptation | |
shadwolf: 20-Jan-2010 | 1) it's possible for AGG to deal text rendering evolved at a low level (perf are great on R2 and that's convincing) 2) Since draw wasn't made to handle such an extensive use of the draw/text instruction in R3 we have to make the AGG mode adapted to block of text handelling the first idea and the main boring thing to have to deal in AGG text rendering is the positioning of every block of text. We need a way to retrieve the position of a texte on screen. 3) to be better and faster AGG should be less verbose. I know that it's possible to save lot of space in the draw block | |
Maxim: 12-Feb-2010 | IMHO, Henrik has stepped up as project manager for R3VID. Cyphre is still interested in helping out on the low-level AGG AFAIK. Others, like me, will definitely chime-in when it starts being more organized, if only to implement Styles, themes and stuff like that. But we need the next host released... and AFAICT, that is one of the main projects of Carl right now. At least, I hope it is. | |
Henrik: 18-Feb-2010 | Cyphre is down with the flu right now and a sporadic internet connection due to snow, so I have no immediate status of what he's doing, other than waiting for the host kit, but what he's shown me, based on a separate AGG build, shows that there are a lot of ideas for what to do. | |
Pekr: 18-Feb-2010 | some two or more weeks ago he told me he is working on some demo, showing some AGG capabilities. That is probably stuff you saw? Will it be demoed? :-) Or is it just internal build to have some ground for further architecture improvement talks? | |
Henrik: 18-Feb-2010 | He was testing the bottleneck for parsing and drawing DRAW blocks as quickly as possible, and he calculated that the bottleneck for PARSE was much lower than that for AGG's draw routines, so it didn't make much sense to have to avoid PARSE according to his measurements. It might still become possible anyway to bypass PARSE, but I'm not sure. | |
Henrik: 18-Feb-2010 | The separate AGG build is just there until he can get a hold of the host kit and to test ideas. | |
Maxim: 26-Feb-2010 | in my soon to be released application, the dataflow aspect of the code is less than 20% of the time spent, yet it represents at least 80% of the actual usefull software capabilities. most of it was fixing View and VID themselves... the styles, the event mechanism and bugs, AGG bugs, enhancing http, etc. | |
Maxim: 26-Feb-2010 | an example of a very complex system which was made 100% robust is this: -an image is used as a background, cropped , transformed and displayed within AGG -we need to overlay an text area over the canvas, but its all AGG and its contained within a graphic element. -we create a face which is a text-area, LINK it to the coordinates of the graphic element. -the face is then converted to an image on the fly everytime the coordinates change (even rebuilding the text wrapping interactively) -this image is added at the proper position with the AGG draw block as an image with coordinates. | |
Maxim: 26-Feb-2010 | its why I'm pushing for graphic element as a lower-level api for AGG right into view. | |
Maxim: 2-Mar-2010 | but since the data is stuff I create, I can't READ the data which is being managed by AGG. which would be the major benefit of "draw elements" | |
Cyphre: 3-Mar-2010 | Maxim, with this system you can easily manage any draw element or group of draw elements inside draw block. I have been thinking about this and I don't see any benefit being able to access the data at the level of internal AGG structure. Rather it looks like it would make the whole system more complex. The only thing which could be useful is being able to 'cache' already parsed DRAW block. That change can be done without much complications. But I should also mention that the 'parsing phase' is very little part of the performance overhead so cahing the internal structure would be theoretically useful only for really big DRAW blocks with tens of thousands and more elements..but such big blocks would be still not much usable becuase of the final performance of the rasterizing/rendering phase in such case. But I'm still open and I'd like to know your clarification and explanation of the benefits you see in your requested feature though. | |
Maxim: 3-Mar-2010 | AGG does a lot of computation, basically having access to this data in a consistent way. also not having to use composed/reduced blocks all the time. getting info like (x,y) coordinate of current bspline curve at length 100 pixels from an end. getting intersections between complex shapes like splines and polygons, xformed. bounding boxes of things, calculated points of displayed letters. if there where a unified method which just keeps the persistent data and we can move it around/manipulate it without needing to store it as a block of dialect, I could build my own specific and much cleaned up dialects or graphic engines without needing to go through the draw dialect like I do know. Myself, I have no use for most of the draw dialect, it just complicates my work, by getting in my way. | |
Pekr: 3-Mar-2010 | So you want kind of API access to low level AGG engine elements? Kind of like Extensions can access REBOL dtypes? | |
Maxim: 3-Mar-2010 | as I said, I will wait for the hostkit with view to be released before spending to much time on this... I really don't have time to go in depth with this... and I'm not even trying to convince anyone. just replying to questions and I feel its being taken too seriously for now. its possible, the better approach will be to have access to some of the AGG internals via the extensions and wrap these into generic objects, for example. its still just an idea. there is no point to going into details. I need to see the view host kit first. | |
Henrik: 29-Mar-2010 | I've been working on docs (a dialect for image annotation in docs, actually) for a program, so not much here. Some things are actually very difficult to do in DRAW. I could use a pure alpha overwrite mode. I've posted a report in the AGG group about a bug in TRANSLATE. I might add something to specs, which I've been working with as part of writing docs: A way to use a layer to provide editing tools, i.e. box handles, rotate handles, swipe selections, moving and resizing, like you have in many graphics editors. I think this can be done in a generic way and would make it easy to build any kind of graphics or GUI editor. This is not something that we want to add now, but it's nice to think into the design, so that it's simple to do later (and to remove, when Carl announces that he doesn't like it). | |
shadwolf: 2-Apr-2010 | AGG group about a bug in TRANSLATE . henrik not a news that bu exist since 3 years i submited it long time ago when i was implementing matrix translation in AGG when i was writing SVG renderer. So far no one seemed to care about that... | |
shadwolf: 2-Apr-2010 | ( and on tooltip using AGG some cool effect can be done there ... ( like a progressive fade away in time) ) | |
Henrik: 2-May-2010 | Not sure we can make a discussion out of it, so I'm posting here: How closely related would AGG/Draw be with HTML5 canvas? | |
shadwolf: 13-May-2010 | didec windows console is boring and ugly now that i show agg could deal pretty stuffs with text in color why don't we HTMLize our console and bring some new way to experience console direct code flow coding cause that was the strong point of R2 and that's the actual weak point of r3 | |
AdrianS: 7-Jun-2010 | the developer states that his technique gives better results than Cairo and AGG | |
Pekr: 7-Jun-2010 | Well, AGG is good enough imo. Our problems imo lay elsewhere - GUI incompletness, GUI look (skin). | |
Cyphre: 7-Jun-2010 | The morphic AA looks nicer though I wouldn't see any big difference if the pictures were shown separately to me. Also I haven't found any details..just couple of screenshot comparions with Inkscape. The author is not mentioning a word about preformance etc. As Pekr said AGG have already good quality and imo there will be 'slight' visual difference between Morphic unless you start comparing pixels. Also don't forget there is not only antialiasing in play. AGG uses very vell written vector graphic 'framework' packed with features. All the new algorithms presented in recent years are still missing that part. But I agree. If Morphic(or whatever else) will offer faster&better quality AA it should be possible to write custom rasterizer/renderer module(simmilar as the special Flash rasterizer) so it can be used inside AGG framework. | |
Cyphre: 7-Jun-2010 | The issue with AGG font rendering is that we are not using the 'clear type' like techinque yet. It would look much better even with current AA. I believe it will be part of R3 once HostKit is avaliable. | |
Maxim: 16-Jun-2010 | (regardless of AGG) | |
Pekr: 25-Jun-2010 | Apart from the fact that I can't properly answer your question, my understanding is, that the team is working on all aspects of GUI, in following areas: - low-level (in C) - new GUI is based mostly on AGG, some fixes and enhancements are going to be done. Carl, and Cyphre probably too, is also working on HostKit GUI isolation, so that the GUI can be fully open-sourced, becomes part of Host environment, and can be eventually replaced - various GUI subsystems are being worked on - layout, resizing, keyboard navigation/tabbing/accelerator keys, skinning/themes/materials, GUI transition effects, etc. - GUI styles - new VID is supposed to be released with some advanced styles, as e.g. tabs, grid, hopefully tree too, maybe a menu (dunno about that one) - some other things come to my mind - browser plugins, video codecs etc. - good times ahead once we are there, but first things first :-) | |
Robert: 25-Jun-2010 | AGG interface is speeded up. Current gain about 280% faster. As you can see the drawing time is about 3 times the resizing time. These numbers should become more equal. | |
Steeve: 6-Jul-2010 | Is the AGG cache an enhancement ? | |
Steeve: 6-Jul-2010 | *AGG cache stack | |
shadwolf: 6-Jul-2010 | i hope with the cash we tends to a more extensive use of AGG and a less anecdotic use of this marvelous fantastic powerfull tool (aGG) | |
Henrik: 11-Jul-2010 | Some resulting exes: 07/10/2010 12:45 PM 267,776 r3.exe 07/10/2010 12:46 PM 28,672 r3core.exe 07/10/2010 12:34 PM 393,216 r3lib.dll You can build an R3/Core without AGG. | |
Robert: 11-Jul-2010 | For example: If you can't get AGG to work, you need to do a replacement with an equal API layer. | |
Robert: 14-Jul-2010 | VID shouldn't be affected. The host-kit change with the low-level part: VID | VIew | Rebol Core | AGG | OS. We need to implement all DRAW commands yet. | |
Graham: 14-Jul-2010 | This AGG stuff is pretty old ... has copyright from 2005 | |
Graham: 14-Jul-2010 | AGG 2.4 has the BSD license and 2.5 ( seems work stopped in 2007 or before ) has the GPL license. | |
Pekr: 14-Jul-2010 | Graham - we use AGG 2.4, because with 2.5, Max changed license to GPL. But Cyphe said, that there is not much new in 2.5. AGG is a dead-end anyway - it is not further developed by original author (Max Shemanarev) imo, but still good. | |
Pekr: 14-Jul-2010 | no, Cairo ... but AGG is still better than Cairo, so why to worry? And even if Max does not develop it further, maybe AGG community will come with some other improvements ... | |
Steeve: 14-Jul-2010 | We can enhance agg ourself, I guess. | |
Henrik: 14-Jul-2010 | so far we're not even taking 100% advantage of AGG, so there's a bit of juice left in it. | |
Graham: 14-Jul-2010 | rather than enhance AGG 2.4 .. why not move to OpenGL ? | |
Henrik: 14-Jul-2010 | I'm not sure openGL can cover what AGG does and vice versa. | |
Henrik: 14-Jul-2010 | The only thing Carl dislikes about AGG so far is that it's written in C++. This gives compiler issues. | |
Steeve: 14-Jul-2010 | Transformations are handled by matrix computations in AGG, how do you want to accelerate that and keep it portable ? | |
Henrik: 14-Jul-2010 | Graham, I suspect Cairo takes on tasks other than rasterization, which is why it has PDF/PS outputs. AGG doesn't do that and shouldn't be doing that anyway. | |
Steeve: 14-Jul-2010 | Remember that AGG has a neat design. All stages are pipelined and it's easly to interrupt it at any step. | |
Pekr: 14-Jul-2010 | How big is Cairo lib? IIRC it was over 1MB? I agree with Robert - let's finish what we have. Let's see, what enhancements we can get in. AGG is still a cool library, being used by MANY projects. Just becuase Mozilla honchos could not do any better and choosed Cairo as mostly a political decision (because of author's involvement in the project) does not mean Cairo is any better ... Apart from that, and as Robert says - in future, we can eventually replace it. | |
shadwolf: 15-Jul-2010 | an extension linkin agg and opengl would be awsome and crazy at same time that's sad the developpement stopped | |
shadwolf: 15-Jul-2010 | but there is 2 things differents ... you have the dialect draw wich gives access to the insertion of drawn shapes into a VID face and AGG is the engine can then beanything .... | |
shadwolf: 15-Jul-2010 | can opengl be used the same extends as AGG hum ... opengl have a heavy mechanics and that's not suited in my opinion for 2D fast over face rendering | |
shadwolf: 15-Jul-2010 | the thing is draw and so agg can be used on any widget componing VID and that's a hugde constraint what really sux with opengl are those half assed IHM interface i know glut, x and w32 extension that allows the opengl rendering engine to recive user events and then display on screen in the particular area set for it. Those interfaces are not 1% as fun as VID... Vid is total flexibility. we never did that in vid be you can imagine heavy animation using draw dialect on any kind of preset styled face. I think carl tryed to show that with the animated sliding widget when you open a window in his R3 GUI demo. | |
shadwolf: 15-Jul-2010 | ofcourse the software speudo antialiasing u can find in AGG is just a joke compared to X16 antialiasing buffers that can be found on now in dayx accelarting video cards. | |
shadwolf: 15-Jul-2010 | comparing AGG antialising and opengl antialiasing is like comparing the sun and the moon ... | |
shadwolf: 15-Jul-2010 | the moon shines but it's only due to the refraction of the light comming from the sun that's prety much what the normalisation algorithms using in AGG does and they completly sux with tiny chars fonts... making them so blur or fuzzy as you like that you can't read them ... | |
shadwolf: 15-Jul-2010 | but in agg you don't have a proper way to handle fonts who wants to have flat texels to represent is document or hundreds of png files in memory ... and that where glut and other extensions try to give solutions but the réalisaton is in général ugly. | |
shadwolf: 15-Jul-2010 | it embed an SVG engine ( even if i'm sure a rebol / agg one blast it ) support of freefonts support of png (but only this image format where rebol works with jpg etc...) | |
shadwolf: 15-Jul-2010 | well the fact is cpu are multi threaded multi cored and so are the graphic cards when you render a document with AGG only that the freaking CPU that does the whole rendering work for God's sakes, it's like the computing on the 90's ... ok it's passed it's done it's deprecated and over now we have 650MHz GPU multi rendering pipelined and multi threaded multi cored CPU over 2GHZ per core that's a lot of power and why would rebol be the only one not exploiting that ... And in the near futur (5 years to come) the GPU and CPU will be merged in a single chip high performance. | |
shadwolf: 15-Jul-2010 | let imagine you do a button you want to draw something on the background with AGG and then have the regular button borders and fonts to be applyed over using AGG it's possible to have that effect with the context phylosophy the VID button is a separated entity from the agg entity you have the QT context the QT widgets display in it and the AGG widget is one of the few widgets you have but you can't mixe content ... | |
Graham: 15-Jul-2010 | So, one could use AGG for somethings like a GUI and then use Cairo for display postscript | |
Pekr: 26-Jul-2010 | Any news how implementing command wrappers for AGG goes? Or on GUI status in gerenal? :-) | |
Henrik: 7-Aug-2010 | sure: Robert - DB interface, messaging, state machine, cracking the whip Cyphre - Resizing, low level AGG, rich text, host kit interface Me - Dialogs, form validation, database interface, reactors, messaging, state machine help system Bolek - Styles, resizing Ladislav - Resizing, state machine The above is basically what needs to be done for the first customer app. | |
Henrik: 8-Aug-2010 | Graham: First prototype ready for review: DB interface, resizing, form validation Coding: State machine, styles, messaging, reactors, dialogs, low level AGG, host kit interface Pending: Help system | |
shadwolf: 8-Aug-2010 | i'm not commenting what will be done ofcourse i didn't see it. But i already looked at the richtext engine carl proposed 2 years ago and that's far to be good.... In fact richtext engine is supposed to be dialect layer on top of draw. That dialect layer is adapted normally to handle text rendering the proper way which implies that the lower level text functionnalities in draw for text related effects is better done than previously. That's all i say ... Building a layer richtext what ever it is if the AGG /draw dialect exploit poorly the text related effects that will be a pain and a very small benefit... | |
shadwolf: 8-Aug-2010 | and more complexity you will add to your engine more unexpected problems you will face... Like what we experienced in area-tc... suddently our perffectly working engine under wnidows XP shows strong bugs in rendering just by arriving on windows7. After 6 month in searching the why and not finding any cause to that rendering jam I by chance tryed the ultimate thing no programer does i retro versionned back like 10 version below the rendering engine and there suddently i found that rendering problems disapeared by miracle... I spend 10 times more time searching why the rendering was defective on windows 7 than doing area-tc and viva-rebol.r. And that's too what completly killed my mood. What else can i do than try to make this community know my experience with extensive text processing in draw with R2 to not have the same conceptual lacks repeated in R3. And clearly in R2 the text commands in AGG/draw were not suited for docuement rendering... That doesn't means AGG can't do it ... that means at that time the dialect draw wasn't designed to exploit intensivly text rendering. I always said before runnning you have to learn to crawl, then to stand up, then to walk. for me the way i saw the realisation of a rendering engine text oriented for draw dialect was first step changing the color of choosen elements in the text, then changing the font spécificity anytime anywhere in the document then being able to do strong text manipulations like moving by drag and drop paragraphs, inserting multimedia content in the document, scaling paragraphs etc... ROBERT: In fact that depends what the rich text engine aims ... for example read only rendering is pretty different of real time editing wisiwyg engine... The complexity betwin both approach is like 1 to 100... | |
Robert: 8-Aug-2010 | Not being an expect but IIRC R2 text rendering is not done using AGG. From this alone a lot of known problems might be coming. | |
Robert: 8-Aug-2010 | In R3 text rendering will be through AGG. We will look into unicode as well right from the start. | |
shadwolf: 8-Aug-2010 | but once again R2 AGG/draw text wasn't desinged to handle this ... we used fixed fonts because we had no other why to obtain the x and y size of each displayed glyph so in other word that a lack of a basic lower level function. | |
Henrik: 10-Aug-2010 | shadwolf for the 56743892th time, the font rendering is not properly utilized from AGG yet, | |
BrianH: 10-Aug-2010 | If AGG (or R2) was relying on the OS font rendering, the behavior shadwolf decribed could be caused by Cleartype. If Cleartype is turned on, but the REBOL renderer isn't rendering with compatible antialiasing, fonts would look bad. | |
Maxim: 10-Aug-2010 | This is not directly AGG's fault, since it might simply expecting different outlines for its rasterizer, or its not rasterizing the exact same way for which the outlines are expected to be used. | |
BrianH: 10-Aug-2010 | Just discovered: R3 doesn't use the same method for doing its font rendering as R2, it uses AGG instead. So it doesn't have the bug, and can be further improved. | |
Cyphre: 12-Aug-2010 | what can be done to get more quality to the font display? I personally would make research about the technique McSeem(AGG author) published in his well known font rendering related article and tried to use the core idea of his demo application for making 'production quality' version which can be then used in the HostKit code base. | |
Graham: 12-Aug-2010 | Because AGG uses it ?? | |
Maxim: 12-Aug-2010 | but that depends on the specifics of the engine. afaik, AGG, in the way it is being used by view renders each element on the canvas, one by one. | |
Maxim: 12-Aug-2010 | again, I'd have to look at the AGG rasterizing pipeline to see how it functions, but the only procedural overhead is in how it inherits its origin at each gob. it might even be impossible from the get-go, based on how the actual rasterization is performed. in Flash this would be impossible. but IIRC past discussions with Cyphre, we use a different rasterizing process, which would allow the whole idea. | |
Group: !REBOL3 ... [web-public] | ||
Robert: 23-Aug-2010 | IMO focus should be now on bug-fixing and closing open tickets. There is still some smaller things to do on the AGG side. And than get a V1.0 out of the door. Because I don't see any cause to not make an offical V1 release of R3 anymore. It's mostly ready for prime time. | |
Maxim: 3-Sep-2010 | one question for you Robert... is the A105 view/agg code stabilized wrt what I was reading for A104? | |
Maxim: 3-Sep-2010 | low-level use of AGG... not the R3GUI | |
Robert: 3-Sep-2010 | A105 is the first one to integrate our AGG code line. So, bringing Carls work and our work much more in sync with less hassels for new releases. | |
Robert: 3-Sep-2010 | I think with A105 the AGG externalization is done. There are some quirks left, to be fixed. But we can now do this on our own. | |
Robert: 3-Sep-2010 | And yes, it's stable WRT AGG. I don't expect major architecture changes. | |
Maxim: 3-Sep-2010 | the only thing I have been wondering is how the gob type interfaces with the AGG... isn't gob! part of the core? | |
Robert: 3-Sep-2010 | I'm not yet an expert, but I think that the GOB! get's converted to the AGG world. Hence, you can take the GOB! from Rebol and however you bring it on screen, just do it. | |
Andreas: 3-Sep-2010 | most stuff in src/agg/ is "just" the agg sources. the rebols-specific stuff in src/agg/ is in ~7 .cpp files, totaling just over 7k lines (agg_{compo,effects,graphics,truetype_text}, compositor, graphics, rich_text). | |
Andreas: 3-Sep-2010 | (but it may well be that i missed some stuff, haven't yet looked too deeply into the agg parts) | |
Maxim: 4-Sep-2010 | I meant the whole graphics sources including AGG. there are many files... figuring out the whole calling order is going to be fun :-) | |
Andreas: 23-Oct-2010 | Carl, a minor glitch in the A109 hostkit, which prevents it from compiling with AGG: in reb-lib.h the #ifdef __cplusplus definition of RXIEXT is borked. | |
Maxim: 13-Jan-2011 | Brian Posted a list in the R2 Releases group. I also hope he included 2 fixes which I got Cyphre to address in view which crash or mock-up the quality in AGG. | |
Kaj: 13-Jan-2011 | Don't remember AGG related fixes | |
shadwolf: 21-Aug-2011 | rebol is dead ... it's dead since the rebol 3 project was started in 2004 just after AGG was integrated to vid and just after rebservice and rebcode were alpha done | |
Group: DevCon2010 ... this years devcon [web-public] | ||
Maxim: 16-Dec-2010 | thanks... its using liquid for all the rendering. the canvas is 100% AGG even for the interactive stuff, there are no subfaces. | |
Maxim: 16-Dec-2010 | as long as it has AGG it would work. though its possible the plugin is old enough for a bit of the code to need some fixes. |
701 / 892 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | [8] | 9 |