Skip navigation.

Log in | Sign up

Opera Core Concerns

Official blog for Core developers at Opera

Graphics demos

My name is Tim Johansson, I am a core technology developer at Opera. I work in the core graphics team which is responsible for all the rendering (of web pages, SVG and <canvas>) and image decoding in Opera.

In the middle of December Opera had an engineering seminar outside Oslo in Norway. At the seminar there were a few presentations. I gave a presentation about graphics in Opera and showed a few demos. In this post I will write about two of the demos, and link to videos of them.

Opera Flashlight

One of the first assignments I had at Opera was to work on a technology for platform independent graphics, which is now used in some of Operas products including the Opera SDK.
When working on it I quickly realized that this technology would make it easy to upload Opera to a texture in a 3d application.
Since I had been working on a 3d engine for fun in my spare time I spent a late evening integrating Opera into my 3d engine. The place I thought sounded most fun to add it was as the projective texture used for the flashlight in the 3d engine.

This video demonstrates the result of that late night hack more than 3 years ago.

Hardware acceleration

One of the things I have been working on lately is hardware acceleration of the vector graphics library used for SVG and <canvas> in Opera using 3d hardware (through OpenGL and Direct3D).

In order to get the most performance from rendering SVG/<canvas> in hardware it is good to avoid reading the rendered image back from the graphics card to system memory since that is a slow operation.
This can be solved by rendering all of Opera (including UI and web pages) in hardware. Rendering Opera in hardware also makes it possible to add visual effects without any additional CPU cost.

This video shows a demo of Opera running fully hardware accelerated. The demo build used in this video is an interal Opera core technology reference build with hardware acceleration enabled. Hardware acceleration is still experimental and is not in any released or soon to be released products.

Selectors APIPresto in the the Opera User-Agent string

Comments

xErath 5. June 2008, 21:26

omg !!!!!!
I want this on my Opera build.

Really nice work p:

How about flipping pages using a cube like the desktops in linux ?

YtseJam 5. June 2008, 21:31

NEAT!!

paddy2k 6. June 2008, 00:37

That is pretty dam cool. It looks pretty stable there. But I guess you'll start to run into the same problems as Compiz does with different graphics cards?

Luchio 6. June 2008, 02:46

Awesome demos! I hope we'll see the hardware acceleration someday, though I suspect it is a nightmare to test out on all possible hardware and OS configuration... Good luck!

non-troppo 6. June 2008, 05:46

Wow, zuper cool!

I can imagine a browser wars 3D game where weapons are projected correct rendering of standards tests like Acid3!

Tim, thanks for this...

Northgrove 6. June 2008, 10:26

Obviously made just for demo purposes, but if making it to an actual Opera build in the far future :wink:, I'd rather see the transition effects configurable. It's important that they don't slow down the UI much as the user have to wait for sliding pages. But especially quick crossfades would be pretty slick. :smile: I actually think Microsoft took a hint there and that's why they switched to those (fades) in Windows 2000 rather than slower sliding menus of Windows 9x.

capricous 6. June 2008, 10:31

Tim, bring on that awesome acceleration! It looks much more practical than the Firefox Cube Plugin [which only works on Windows].

Go Opera features!

RedFoxOne 6. June 2008, 12:13

Neat. Isnt that the coolest thing ya ever saw!

JT
http://www.Ultimate-Anonymity.com

KeMiSa 6. June 2008, 12:34

wow

brunitoc 6. June 2008, 15:42

WOW

Is it coming to any Opera build ? Or it is only for testing ?
I would like to see it in the next version, Opera 10, OR EARLY !!!!


BEST FEATURE EVER SEEN !!!!!!!!!!!!!!!:up: :hat:

FataL 6. June 2008, 15:55

Nice one! :up:
But don't forget to make all transitional effects optional. :wink:

andresruiz 6. June 2008, 16:39

Big boys + big brains = big toys

toyotabedzrock 7. June 2008, 21:02

Wow that’s awesome! DirectX will make it easy to support all MS platforms. Any possibly us Win users will get to try this first?

Does it render the entire page using the GPU or just specific parts?

amphi 9. June 2008, 01:46

Great stuff! :D

VJgamer 11. June 2008, 03:49

RedFoxOne: Neat. Isnt that the coolest thing ya ever saw!

Ditto!

lilmoder 12. June 2008, 22:16

Developers, can you please throw that experimental 3d thing to public somehow? I want to test it, just for fun. :rolleyes:

BTW
It should be used in GTA IV, it would be great in-game internet (mostly real internet) browser :D

gr1b0k 19. June 2008, 14:20

that's great!
p.s. check tags, you lost commas

PeaceDestroyer 10. July 2008, 12:18

Absolutly awesome!
I hope you could show us some more of this in the future. Good job indeed, it could be incredible to see this in Opera 10.

:up:

Lali19871014 30. August 2008, 11:42

Great :up:
Than you will can "copy" the penguin Compiz?
And for example for Ctrl + Tab (And Shift + Ctrl+Tab) can make something such as this: http://www.opera-bongeszo.com//sites/default/files/kepek/2008/9/fulvaltas.jpg
It will be super :king:
bye

rafaelluik 5. September 2008, 21:52

I can't wait to see hardware acceleration, it's a dream that I have!

Opendix 2. October 2008, 18:27

What is the core-Team doing the whole time? :smile:

haavard 3. October 2008, 12:48

They are working on the core.

stoffix 3. October 2008, 14:29

They must be working really hard,
since they don't even have time to
post new blogposts :wink:

haavard 7. October 2008, 12:35

They are working very hard, actually. There are multiple projects, including the next major core version which is to power Peregrine :smile:

Opendix 9. October 2008, 20:04

Yeah.. I thought that they are working very hard... soo... I can look forward to the next post.. perhaps they can tell us something about Peregrine *harriba* :D

honeydew 24. October 2008, 01:13

Very impressive...!!!:cheers:

What graphic card do i need to use this feature?

Keldian 21. November 2008, 19:35

Excellent, I can't wait to see the future. :D

sms985 25. November 2008, 09:18

available in opera 10 perhaps? would be so great!

Write a comment

You must be logged in to write a comment. If you're not a registered member, please sign up.