GTK+ 4 Status Update. Matthias Clasen

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "GTK+ 4 Status Update. Matthias Clasen"

Transcription

1 GTK+ 4 Status Update Matthias Clasen

2 History really the Gimp toolkit GObject client-side windows client-side decorations CSS touch, gestures GL rendering broadway, wayland Pango ATK cairo

3 Present 3.22 the final, stable 3.x series 3.90 since mid-2016 integrate GSK, fully GL/Vulkan based rendering build with meson modernize GDK APIs fully switch to event controllers composite widgets ?

4 Drawing in GTK+ 3 Label: hello world

5 Drawing in GTK+ 3 Label: hello world Create a cairo surface

6 Drawing in GTK+ 3 Label: hello world Call draw() on each widget

7 Drawing in GTK+ 3 Label: hello world Call draw functions to render CSS background, border, shadow

8 Drawing in GTK+ 3 Label: hello world Call Pango to render text

9 Drawing in GTK+ 3 Label: hello world Send the completed frame to the display server

10 Drawing in GTK+ 4 Label: hello world

11 Drawing in GTK+ 4 Container Shadow Color Label: hello world Call snapshot() on each widget to create render nodes

12 Drawing in GTK+ 4 Container Shadow Color Container Clip Shadow Border Label: hello world Create render nodes for CSS background, border, shadow

13 Drawing in GTK+ 4 Container Shadow Color Container Clip Shadow Border Label: hello world Shadow Glyphs Call snapshot functions to create render nodes for text

14 Drawing in GTK+ 4 Container OpColor Shadow Color Container OpLinearGradient OpBorder OpTexture OpInsetShadow Clip Shadow Border OpText Shadow Glyphs GSK translates render nodes into backend operations

15 Drawing in GTK+ 4 Texture Container OpColor OpColor Shadow Color Container OpLinearGradient OpBorder OpLinearGradient OpTexture OpInsetShadow Clip Shadow Border OpText Shadow Glyphs Glyph atlas Upload textures and use Pango to render glyphs

16 Drawing in GTK+ 4 OpColor OpLinearGradient OpBorder OpTexture OpInsetShadow OpText OpColor OpLinearGradient Send the render operations to the GPU

17 Render nodes in the Inspector

18 Input in GTK+ 3 X, Y Paned An event arrives

19 Input in GTK+ 3 X, Y Paned Route it by matching the window

20 Input in GTK+ 3 X, Y Paned ::button-press-event Emit event signals

21 Input in GTK+ 3 X, Y ::button-press-event Paned and propagate up

22 Input in GTK+ 4 X, Y Paned An event arrives

23 Input in GTK+ 4 X, Y Paned Route it by matching coordinates, top-down (capture)

24 Input in GTK+ 4 X, Y Paned and back up (bubble)

25 Input in GTK+ 4 X, Y Paned controller1 controller2 Pass the event to event controllers at each step

26 Composite Widgets in GTK+ 3 Custom drawing not the CSS box model Custom event handling Code duplication A spinbutton is an entry

27 Composite Widgets in GTK+ 4 Any widget can have children Widgets are close to CSS boxes Composition instead of subclassing A switch is composed of two labels a slider A spinbutton has an entry two buttons

28 What s done Vulkan renderer GL renderer New GDK apis Event controllers Composite widgets

29 What s left to do Write cool examples Complete API cleanups Expose shaders for applications Transformations for widgets Complicated widgets: treeview, textview

30 How you can help Write cool examples Port an application Convert custom widgets to new APIs Find what doesn t work, or is too complicated

31 Porting? Widgets are now visible by default gtk_box_pack_start/end has less arguments No more event->button

32 Heroes of GTK+ 4 Benjamin Otte Emmanuele Bassi Timm Bäder Carlos Garnacho Daniel Boles Alexander Larsson Chun-wei Fan Руслан Ижбулатов Jonas Ådahl

33 References GTK+ 4 roadmap: https://wiki.gnome.org/projects/gtk+/roadmap/gtk4 GTK+ sources: https://git.gnome.org/browse/gtk+/ GTK+ blog: https://blog.gtk.org/ GTK+ docs, migration guide: https://developer.gnome.org/gtk4/

34 Questions?

35 Thanks!

C SCI The X Window System Stewart Weiss

C SCI The X Window System Stewart Weiss The X Window System The X Window System is a networking and display protocol which provides windowing on bitmapped displays. X provides the basic framework for building GUI environments, such as drawing

More information

Moblin v2 SDK. Open Source Technology Center Presented by Bob Spencer

Moblin v2 SDK. Open Source Technology Center Presented by Bob Spencer Moblin v2 SDK Open Source Technology Center Presented by Bob Spencer 1 Moblin SDK Agenda SDK Overview (3 parts) Project Creation Demo Plans QA 2 Moblin SDK Development environment Moblin 2.0 Distribution

More information

CS193E Lecture 17. Multiple Document Windows OpenGL & Cocoa

CS193E Lecture 17. Multiple Document Windows OpenGL & Cocoa CS193E Lecture 17 Multiple Document Windows OpenGL & Cocoa Multiple Views onto a Model Xcode Keynote Finder Dreamweaver TreeGenerator 3D NSDocument Architecture Supports two approaches: Simple, single

More information

WPE WebKit. HTML5 user interfaces for embedded devices. Juan José Sánchez Penas Embedded Linux Conference Prague, October 2017

WPE WebKit. HTML5 user interfaces for embedded devices. Juan José Sánchez Penas Embedded Linux Conference Prague, October 2017 WPE WebKit HTML5 user interfaces for embedded devices Juan José Sánchez Penas Embedded Linux Conference Prague, October 2017 Myself, Igalia and Web Browsers Co-founder of Igalia in 2001. 60 engineers.

More information

CS450/550. Pipeline Architecture. Adapted From: Angel and Shreiner: Interactive Computer Graphics6E Addison-Wesley 2012

CS450/550. Pipeline Architecture. Adapted From: Angel and Shreiner: Interactive Computer Graphics6E Addison-Wesley 2012 CS450/550 Pipeline Architecture Adapted From: Angel and Shreiner: Interactive Computer Graphics6E Addison-Wesley 2012 0 Objectives Learn the basic components of a graphics system Introduce the OpenGL pipeline

More information

Design Patterns IV. Alexei Khorev. 1 Structural Patterns. Structural Patterns. 2 Adapter Design Patterns IV. Alexei Khorev. Structural Patterns

Design Patterns IV. Alexei Khorev. 1 Structural Patterns. Structural Patterns. 2 Adapter Design Patterns IV. Alexei Khorev. Structural Patterns Structural Design Patterns, 1 1 COMP2110/2510 Software Design Software Design for SE September 17, 2008 2 3 Department of Computer Science The Australian National University 4 18.1 18.2 GoF Structural

More information

Advanced Ambient Occlusion Methods for Modern Games

Advanced Ambient Occlusion Methods for Modern Games Advanced Ambient Occlusion Methods for Modern Games Andrei Tatarinov, Senior Developer Technology Engineer Alexey Panteleev, Senior Developer Technology Engineer Outline What is AO and why is it SS? Is

More information

CS 4300 Computer Graphics

CS 4300 Computer Graphics CS 4300 Computer Graphics Prof. Harriet Fell Fall 2011 Lecture 8 September 22, 2011 GUIs GUIs in modern operating systems cross-platform GUI frameworks common GUI widgets event-driven programming Model-View-Controller

More information

Visual HTML5. Human Information Interaction for Knowledge Extraction, Interaction, Utilization, Decision making HI-I-KEIUD

Visual HTML5. Human Information Interaction for Knowledge Extraction, Interaction, Utilization, Decision making HI-I-KEIUD Visual HTML5 1 Overview HTML5 Building apps with HTML5 Visual HTML5 Canvas SVG Scalable Vector Graphics WebGL 2D + 3D libraries 2 HTML5 HTML5 to Mobile + Cloud = Java to desktop computing: cross-platform

More information

Guile-GNOME: Atk. version , updated 9 December Bill Haneman Marc Mulcahy Padraig O Briain

Guile-GNOME: Atk. version , updated 9 December Bill Haneman Marc Mulcahy Padraig O Briain Guile-GNOME: Atk version 2.16.2, updated 9 December 2011 Bill Haneman Marc Mulcahy Padraig O Briain This manual is for (gnome atk) (version 2.16.2, updated 9 December 2011) Copyright 2001-2007 Bill Haneman,

More information

Theme System. Wisej Themes 1 OVERVIEW

Theme System. Wisej Themes 1 OVERVIEW Theme System 1 OVERVIEW Wisej theme system is quite sophisticated and goes beyond simple CSS or SASS. This document is only a short overview to get you started. The full documentation will be ready at

More information

Guile-GNOME: Atk. version , updated 2 September Bill Haneman Marc Mulcahy Padraig O Briain

Guile-GNOME: Atk. version , updated 2 September Bill Haneman Marc Mulcahy Padraig O Briain Guile-GNOME: Atk version 2.15.93, updated 2 September 2007 Bill Haneman Marc Mulcahy Padraig O Briain This manual is for (gnome atk) (version 2.15.93, updated 2 September 2007) Copyright 2001-2007 Bill

More information

CSS MOCK TEST CSS MOCK TEST III

CSS MOCK TEST CSS MOCK TEST III http://www.tutorialspoint.com CSS MOCK TEST Copyright tutorialspoint.com This section presents you various set of Mock Tests related to CSS. You can download these sample mock tests at your local machine

More information

... Output System Layers. Application 2. Application 1. Application 3. Swing. UIKit SWT. Window System. Operating System

... Output System Layers. Application 2. Application 1. Application 3. Swing. UIKit SWT. Window System. Operating System Output: Software Output System Layers Application 1 Application 2 Application 3 Swing SWT... UIKit Window System Operating System Hardware (e.g., graphics card) 2 The Window System 3 Window System Basics

More information

INDIAN LANGUAGE SUPPORT IN GNOME-TERMINAL. B.Tech Information Technology

INDIAN LANGUAGE SUPPORT IN GNOME-TERMINAL. B.Tech Information Technology INDIAN LANGUAGE SUPPORT IN GNOME-TERMINAL A Project Report Submitted by Kulkarni Swapnil 110708035 Kulkarni Mihir 110708033 Dige Sourabh 110708020 in partial fulfilment for the award of the degree of B.Tech

More information

Achieving High-performance Graphics on Mobile With the Vulkan API

Achieving High-performance Graphics on Mobile With the Vulkan API Achieving High-performance Graphics on Mobile With the Vulkan API Marius Bjørge Graphics Research Engineer GDC 2016 Agenda Overview Command Buffers Synchronization Memory Shaders and Pipelines Descriptor

More information

Alexander Nyßen! itemis AG! Graphical Editing Framework Project Lead

Alexander Nyßen! itemis AG! Graphical Editing Framework Project Lead Alexander Nyßen! itemis AG! Graphical Editing Framework Project Lead 4 There s really something going on! Image courtesy of Julie Lafrance / flickr GEF celebrated 10th Birthday in 2012!! Initial contribution

More information

David Talby March 21, 2006

David Talby March 21, 2006 David Talby Representing Data Structures Composite Flyweight Decorator Traversing Data Structures Iterator Visitor Documented Proved Design Experience Finding the right classes Finding them faster Common

More information

Real-Time Non- Photorealistic Rendering

Real-Time Non- Photorealistic Rendering Real-Time Non- Photorealistic Rendering Presented by: Qing Hu LIAO SOCS, McGill Feb 1, 2005 Index Introduction Motivation Appel s Algorithm Improving Schema Rendering Result Economy of line A great deal

More information

MPLAB Harmony Graphics Libraries Help

MPLAB Harmony Graphics Libraries Help MPLAB Harmony Graphics Libraries Help MPLAB Harmony Integrated Software Framework 2013-2017 Microchip Technology Inc. All rights reserved. Graphics Libraries Help Graphics Libraries Help This topic provides

More information

How GNOME Obsoleted its Enable Accessibility Setting. Alejandro Piñeiro

How GNOME Obsoleted its Enable Accessibility Setting. Alejandro Piñeiro How GNOME Obsoleted its Enable Accessibility Setting Alejandro Piñeiro (apinheiro@igalia.com) Topics Accessibility vs. Accessibility Support Phase 1: Getting Started Phase 2: Rebuilding What We Had Phase

More information

Cross-platform graphics with cairo

Cross-platform graphics with cairo English Sign in (or register) Technical topics Evaluation software Community Events Cross-platform graphics with cairo Vector drawing library aims to produce consistent output Eli M. Dow (emdow@us.ibm.com),

More information

Reboot: Tizen Widget Framework. Hyun Ho, Kang Engineer Samsung Electronics. Copyright 2017 Samsung. All Rights Reserved.

Reboot: Tizen Widget Framework. Hyun Ho, Kang Engineer Samsung Electronics. Copyright 2017 Samsung. All Rights Reserved. Reboot: 1 Tizen Framework Hyun Ho, Kang Engineer Samsung Electronics Copyright 2017 Samsung. All Rights Reserved. Hello! My name is Hyun Ho, Kang. I m working for Samsung Electronics I m one of the Tizen

More information

COMP6700/2140 GUI and Event Driven Programming

COMP6700/2140 GUI and Event Driven Programming COMP6700/2140 GUI and Event Driven Programming Alexei B Khorev and Josh Milthorpe Research School of Computer Science, ANU April 2017 Alexei B Khorev and Josh Milthorpe (RSCS, ANU) COMP6700/2140 GUI and

More information

McCLIM 0.01 user s manual. Robert Strandh

McCLIM 0.01 user s manual. Robert Strandh McCLIM 0.01 user s manual Robert Strandh strandh@labri.fr April 5, 2005 2 Contents 1 Introduction 7 1.1 Standards............................... 7 I Getting Started 9 2 CLIM Demos and Applications 11 2.1

More information

MultiTouch CornerStone Software Development. MultiTouch.fi, all rights reserved

MultiTouch CornerStone Software Development. MultiTouch.fi, all rights reserved MultiTouch CornerStone Software Development Agenda Overview of the software stack Programming model Core Concepts Introduction to the SDK example applications Team/Demo application programming Software

More information

We are the 1 % Porting KWin to Qt 5 Martin Gräßlin Bilbao Akademy

We are the 1 % Porting KWin to Qt 5 Martin Gräßlin Bilbao Akademy We are the 1 % Porting KWin to Qt 5 Martin Gräßlin 2013-07-13 Bilbao Akademy Be Free. KDE About me Martin Gräßlin mgraesslin@kde.org http://blog.martin-graesslin.com KWin Maintainer Focus on Porting to

More information

Automatically generated type-safe GTK+ binding for Dylan

Automatically generated type-safe GTK+ binding for Dylan Automatically generated type-safe GTK+ binding for Dylan Hannes Mehnert hannes@mehnert.org Dylan Hackers ABSTRACT We present an automated way to get language bindings for GTK+ for Dylan [2], an object-oriented

More information

Experiences Developing a Wayland Based IVI HMI. Ossama Othman 28 May 2013

Experiences Developing a Wayland Based IVI HMI. Ossama Othman 28 May 2013 Experiences Developing a Wayland Based IVI HMI Ossama Othman 28 May 2013 Context Provide human-machine interface (HMI) better suited for Tizen IVI Driver safety React to vehicle state Options Leverage

More information

Developer Tools. Robert Strzodka. caesar research center Bonn, Germany

Developer Tools. Robert Strzodka. caesar research center Bonn, Germany Developer Tools Bonn, Germany Choices in GPU Programming Application e.g. in C/C++, Java, Fortran, Perl Window manager e.g. GLUT, Qt, Win32, Motif Operating Graphics system hardware e.g. e.g. Windows,

More information

The Users Guide. and. API Reference

The Users Guide. and. API Reference McCLIM User s Manual The Users Guide and API Reference Copyright c 2004,2005,2006,2007,2008,2017 the McCLIM hackers. i Table of Contents Introduction......................................... 1 Standards...........................................................

More information

CS4621/5621 Fall Computer Graphics Practicum Intro to OpenGL/GLSL

CS4621/5621 Fall Computer Graphics Practicum Intro to OpenGL/GLSL CS4621/5621 Fall 2015 Computer Graphics Practicum Intro to OpenGL/GLSL Professor: Kavita Bala Instructor: Nicolas Savva with slides from Balazs Kovacs, Eston Schweickart, Daniel Schroeder, Jiang Huang

More information

GNOME 3.0 Accessibility: State of the Union. Alejandro Piñeiro

GNOME 3.0 Accessibility: State of the Union. Alejandro Piñeiro GNOME 3.0 Accessibility: State of the Union Alejandro Piñeiro (apinheiro@igalia.com) Let's introduce it... Accessibility? Means helping people with disabilities to participate in any life activity Like

More information

Intel Core 4 DX11 Extensions Getting Kick Ass Visual Quality out of the Latest Intel GPUs

Intel Core 4 DX11 Extensions Getting Kick Ass Visual Quality out of the Latest Intel GPUs Intel Core 4 DX11 Extensions Getting Kick Ass Visual Quality out of the Latest Intel GPUs Steve Hughes: Senior Application Engineer - Intel www.intel.com/software/gdc Be Bold. Define the Future of Software.

More information

kiss_sdl Simple generic widget toolkit for SDL2

kiss_sdl Simple generic widget toolkit for SDL2 kiss_sdl manual 1 kiss_sdl Simple generic widget toolkit for SDL2 1. Overview kiss_sdl is a generic low level widget toolkit for SDL2. Low level may not sound good, but this is exactly what some developers

More information

Optimizing and Profiling Unity Games for Mobile Platforms. Angelo Theodorou Senior Software Engineer, MPG Gamelab 2014, 25 th -27 th June

Optimizing and Profiling Unity Games for Mobile Platforms. Angelo Theodorou Senior Software Engineer, MPG Gamelab 2014, 25 th -27 th June Optimizing and Profiling Unity Games for Mobile Platforms Angelo Theodorou Senior Software Engineer, MPG Gamelab 2014, 25 th -27 th June 1 Agenda Introduction ARM and the presenter Preliminary knowledge

More information

Hildon 2.2: new GTK+ widgets for mobile devices

Hildon 2.2: new GTK+ widgets for mobile devices Hildon 2.2: new GTK+ widgets for mobile devices Alberto Garcia agarcia@igalia.com Claudio Saavedra csaavedra@igalia.com Introduction Hildon widgets library Set of widgets built on top of GTK+ Created for

More information

Virtual Frameworks for Source Migration

Virtual Frameworks for Source Migration Virtual Frameworks for Source Migration by Jack S. Chi A thesis presented to the University of Waterloo in fulfillment of the thesis requirement for the degree of Master of Mathematics in Computer Science

More information

Moving Mobile Graphics Advanced Real-time Shadowing. Marius Bjørge ARM

Moving Mobile Graphics Advanced Real-time Shadowing. Marius Bjørge ARM Moving Mobile Graphics Advanced Real-time Shadowing Marius Bjørge ARM Shadow algorithms Shadow filters Results Agenda SHADOW ALGORITHMS Shadow Algorithms Shadow mapping Depends on light type Directional,

More information

RAMSES. TECHNICAL OVERVIEW.

RAMSES. TECHNICAL OVERVIEW. RAMSES. TECHNICAL OVERVIEW. Sven von Beuningen, Bernhard Kißlinger 30.11.2017 DISPLAY CLUSTER POTENTIAL SOLUTIONS. RAMSES - Technical Overview Seite 2 Rendering on one ECU and transfer via video to another

More information

MSOffice WORD Microsoft Office 20 13

MSOffice WORD Microsoft Office 20 13 MSOffice WORD Microsoft Office 2013 Lesson 2: Format Content Objectives: Create headers and footers Insert and modify a table and chart Insert and manipulate Clip Art, SmartArt, and WordArt Work with a

More information

Wayland IVI Extension

Wayland IVI Extension Wayland IVI Extension May 10, 2017 Updates in front of us Eugen Friedrich, Emre Ucan Graphics engineers, ADIT Wayland IVI Extension Agenda Short introduction of wayland-ivi-extension Current status of

More information

Design Patterns. David Talby

Design Patterns. David Talby Design Patterns David Talby Contents Representing Data Structures Composite Flyweight Decorator Traversing Data Structures Iterator Visitor May 27, 2008 Object Oriented Design Course 2 Design Patterns

More information

8/16/2014 UNITYCODER.COM MOBILE PAINT

8/16/2014 UNITYCODER.COM MOBILE PAINT 8/16/2014 UNITYCODER.COM MOBILE PAINT Mobile Paint Table of Contents INTRODUCTION... 2 FEATURES... 2 LIMITATIONS... 2 REQUIREMENTS... 2 FILES IN THE PACKAGE... 3 USAGE INSTRUCTIONS... 4 KNOWN ISSUES...

More information

A Comparison between DirectFB and X11 Graphics Library

A Comparison between DirectFB and X11 Graphics Library A Comparison between DirectFB and X11 Graphics Library Sung-Bong Jang 1, Jeong-Mi Kim 2 and Mi-Young Choi 2 1 Department of Industry-Academy Cooperation, Kumoh National Institute of Technology, 730701

More information

The Shadow Rendering Technique Based on Local Cubemaps

The Shadow Rendering Technique Based on Local Cubemaps The Shadow Rendering Technique Based on Local Cubemaps Content 1. Importing the project package from the Asset Store 2. Building the project for Android platform 3. How does it work? 4. Runtime shadows

More information

BORDERLESS AND BARRIER FREE

BORDERLESS AND BARRIER FREE ReviewS overview BORDERLESS AND BARRIER FREE Marco Uberti, Fotolia The new Gnome appeared in March and includes improvements for both users and developers. We ll tell you about network-transparent filesystem

More information

X.Org & BSD - Upcoming Plans

X.Org & BSD - Upcoming Plans X.Org & BSD - Upcoming Plans Matthieu Herrb OpenBSD/X.Org BSDCan, May 17 2008 http://www.laas.fr/~matthieu/talks/bsdcan2008.pdf Agenda 1 Introduction 2 Some history... 3 The present 4 The future 5 Conclusion

More information

CS 450: COMPUTER GRAPHICS REVIEW: INTRODUCTION TO COMPUTER GRAPHICS SPRING 2016 DR. MICHAEL J. REALE

CS 450: COMPUTER GRAPHICS REVIEW: INTRODUCTION TO COMPUTER GRAPHICS SPRING 2016 DR. MICHAEL J. REALE CS 450: COMPUTER GRAPHICS REVIEW: INTRODUCTION TO COMPUTER GRAPHICS SPRING 2016 DR. MICHAEL J. REALE COMPUTER GRAPHICS DEFINITION AND AREAS Computer graphics creating and manipulating images using computers

More information

Color and Pixmaps. Motif Programmer s Guide 1

Color and Pixmaps. Motif Programmer s Guide 1 Color and Pixmaps Motif uses colors and pixmaps for several general purposes: To fill window backgrounds and borders To draw text and graphics in window foregrounds To generate shadows with a three dimensional

More information

Vulkan on Mobile. Daniele Di Donato, ARM GDC 2016

Vulkan on Mobile. Daniele Di Donato, ARM GDC 2016 Vulkan on Mobile Daniele Di Donato, ARM GDC 2016 Outline Vulkan main features Mapping Vulkan Key features to ARM CPUs Mapping Vulkan Key features to ARM Mali GPUs 4 Vulkan Good match for mobile and tiling

More information

widgetjs Documentation

widgetjs Documentation widgetjs Documentation Release 1.2.3 Nicolas Vanhoren Dec 22, 2017 Contents 1 Tutorial 3 1.1 Presentation of widgetjs......................................... 3 1.2 Quickstart................................................

More information

Next Generation OpenGL Neil Trevett Khronos President NVIDIA VP Mobile Copyright Khronos Group Page 1

Next Generation OpenGL Neil Trevett Khronos President NVIDIA VP Mobile Copyright Khronos Group Page 1 Next Generation OpenGL Neil Trevett Khronos President NVIDIA VP Mobile Ecosystem @neilt3d Copyright Khronos Group 2015 - Page 1 Copyright Khronos Group 2015 - Page 2 Khronos Connects Software to Silicon

More information

Web browser architecture

Web browser architecture Web browser architecture Web Oriented Technologies and Systems Master s Degree Course in Computer Engineering - (A.Y. 2017/2018) What is a web browser? A web browser is a program that retrieves documents

More information

Bringing AAA graphics to mobile platforms. Niklas Smedberg Senior Engine Programmer, Epic Games

Bringing AAA graphics to mobile platforms. Niklas Smedberg Senior Engine Programmer, Epic Games Bringing AAA graphics to mobile platforms Niklas Smedberg Senior Engine Programmer, Epic Games Who Am I A.k.a. Smedis Platform team at Epic Games Unreal Engine 15 years in the industry 30 years of programming

More information

RSX Best Practices. Mark Cerny, Cerny Games David Simpson, Naughty Dog Jon Olick, Naughty Dog

RSX Best Practices. Mark Cerny, Cerny Games David Simpson, Naughty Dog Jon Olick, Naughty Dog RSX Best Practices Mark Cerny, Cerny Games David Simpson, Naughty Dog Jon Olick, Naughty Dog RSX Best Practices About libgcm Using the SPUs with the RSX Brief overview of GCM Replay December 7 th, 2004

More information

Flash offers a way to simplify your work, using symbols. A symbol can be

Flash offers a way to simplify your work, using symbols. A symbol can be Chapter 7 Heavy Symbolism In This Chapter Exploring types of symbols Making symbols Creating instances Flash offers a way to simplify your work, using symbols. A symbol can be any object or combination

More information

Introduction to 3D Graphics

Introduction to 3D Graphics Graphics Without Polygons Volume Rendering May 11, 2010 So Far Volumetric Rendering Techniques Misc. So Far Extended the Fixed Function Pipeline with a Programmable Pipeline Programming the pipeline is

More information

Assistant Professor Computer Science. Introduction to Human-Computer Interaction

Assistant Professor Computer Science. Introduction to Human-Computer Interaction CMSC434 Introduction to Human-Computer Interaction Week 08 Lecture 16 Oct 23, 2014 Building Android UIs II Implementing Custom Views Human Computer Interaction Laboratory @jonfroehlich Assistant Professor

More information

WebGL and GLSL Basics. CS559 Fall 2015 Lecture 10 October 6, 2015

WebGL and GLSL Basics. CS559 Fall 2015 Lecture 10 October 6, 2015 WebGL and GLSL Basics CS559 Fall 2015 Lecture 10 October 6, 2015 Last time Hardware Rasterization For each point: Compute barycentric coords Decide if in or out.7,.7, -.4 1.1, 0, -.1.9,.05,.05.33,.33,.33

More information

OpenOffice.org and XUL Embedding Gecko in OOo Stephan Schäfer

OpenOffice.org and XUL Embedding Gecko in OOo Stephan Schäfer OpenOffice.org and XUL Embedding Gecko in OOo Stephan Schäfer Project Lead GSL Sun microsystems About Me StarOffice developer since 2000 Project Lead GSL, main topic VCL > VCL architecture and Win32 support

More information

Viewport 2.0 API Porting Guide for Locators

Viewport 2.0 API Porting Guide for Locators Viewport 2.0 API Porting Guide for Locators Introduction This document analyzes the choices for porting plug-in locators (MPxLocatorNode) to Viewport 2.0 mostly based on the following factors. Portability:

More information

Connecting with Tizen : An Overview & Roadmap. Mohan Rao

Connecting with Tizen : An Overview & Roadmap. Mohan Rao Connecting with Tizen : An Overview & Roadmap Mohan Rao Contents What is Tizen? Why Tizen? Device profile Tizen 2.4 Tizen 3.0 What s next? Conclusion 2 What is Tizen? (1/2) Designed for various category

More information

VA Smalltalk Update. 24 th ESUG Conference Prague, Czech Republic August 23, John O Keefe Chief Technical Officer Instantiations, Inc.

VA Smalltalk Update. 24 th ESUG Conference Prague, Czech Republic August 23, John O Keefe Chief Technical Officer Instantiations, Inc. 24 th ESUG Conference Prague, Czech Republic August 23, 2016 VA Smalltalk Update John O Keefe Chief Technical Officer Instantiations, Inc. Agenda Company Update Current Release Content Next Release Candidates

More information

ACDSee 10. ACDSee 10 tutorials > Adding SendPix slideshows to web sites and blogs. What is ACDSee SendPix? Creating a SendPix album and slideshow

ACDSee 10. ACDSee 10 tutorials > Adding SendPix slideshows to web sites and blogs. What is ACDSee SendPix? Creating a SendPix album and slideshow tutorials > Adding SendPix slideshows to web sites and blogs ACDSee SendPix is a free image-sharing service. To use the SendPix service, select the images you want to share in ACDSee and use the menu or

More information

Q2. What versions of PeopleTools has Fluid UI? A. Fluid is available starting from PT 8.54

Q2. What versions of PeopleTools has Fluid UI? A. Fluid is available starting from PT 8.54 FLUID UI FAQs Q1. What is Fluid UI? A. Fluid User Interface is designed as a significant improvement over the PeopleSoft classic user interface, which aims to provide customers with an enhanced and intuitive

More information

AMD RADEON GFX & DIRECTX 12 GRAPHICS CORE NEXT BETTER PREPARED FOR DIRECTX 12 ROBERT HALLOCK AMD TECHNICAL MARKETING APPROVED FOR ALL AUDIENCES

AMD RADEON GFX & DIRECTX 12 GRAPHICS CORE NEXT BETTER PREPARED FOR DIRECTX 12 ROBERT HALLOCK AMD TECHNICAL MARKETING APPROVED FOR ALL AUDIENCES GRAPHICS CORE NEXT BETTER PREPARED FOR DIRECTX 12 APPROVED FOR ALL AUDIENCES AMD RADEON GFX & DIRECTX 12 ROBERT HALLOCK AMD TECHNICAL MARKETING GAME DEVS & ASYNC SHADERS DAN BAKER, PARTNER, OXIDE GAMES

More information

developer.nvidia.com The Source for GPU Programming

developer.nvidia.com The Source for GPU Programming developer.nvidia.com The Source for GPU Programming Latest documentation SDKs Cutting-edge tools Performance analysis tools Content creation tools Hundreds of effects Video presentations and tutorials

More information

EECS 487: Interactive Computer Graphics

EECS 487: Interactive Computer Graphics EECS 487: Interactive Computer Graphics Lecture 21: Overview of Low-level Graphics API Metal, Direct3D 12, Vulkan Console Games Why do games look and perform so much better on consoles than on PCs with

More information

KIVY - A Framework for Natural User Interfaces

KIVY - A Framework for Natural User Interfaces KIVY - A Framework for Natural User Interfaces Faculty of Computer Sciences Source of all Slides adopted from http://www.kivy.org Kivy - Open Source Library Kivy is an Open Source Python library for rapid

More information

Visualizing Information with

Visualizing Information with Visualizing Information with HTML5 @synodinos 35,000 years ago Chauvet cave, southern France By far the oldest paintings ever discovered Hundreds of paintings At least 13 different species Viubk source

More information

Graduating to GUI. PyGObject for Beginners. Presented by Paul W. Frields Red Hat, Inc. / Fedora Project

Graduating to GUI. PyGObject for Beginners. Presented by Paul W. Frields Red Hat, Inc. / Fedora Project Graduating to GUI PyGObject for Beginners Presented by Paul W. Frields Red Hat, Inc. / Fedora Project Copyright 2011 Paul W. Frields. This work is licensed under a Creative Commons Attribution 3.0 License.

More information

Lecture 3. GUI Programming part 1: GTK

Lecture 3. GUI Programming part 1: GTK INTRODUCTION TO DESIGN AUTOMATION Lecture 3. GUI Programming part 1: GTK Guoyong Shi, PhD shiguoyong@ic.sjtu.edu.cn School of Microelectronics Shanghai Jiao Tong University Fall 2010 2010-9-15 Slide 1

More information

A Design Recovery View - JFace vs. SWT. Abstract

A Design Recovery View - JFace vs. SWT. Abstract A Design Recovery View - JFace vs. SWT Technical Report 2009-564 Manar Alalfi School of computing- Queen s University Kingston, Ontario, Canada alalfi@cs.queensu.ca Abstract This paper presents an experience

More information

Leveraging the HTML5 Canvas/Javascript for web and mobile maps with CartoVista

Leveraging the HTML5 Canvas/Javascript for web and mobile maps with CartoVista Leveraging the HTML5 Canvas/Javascript for web and mobile maps with CartoVista Dany Bouchard, DBx GEOMATICS inc. ABSTRACT. Developing cross-browser mapping applications is a challenge that requires good

More information

Interface Builders and Interface Description Languages

Interface Builders and Interface Description Languages Interface Builders and Interface Description Languages Interface Builders (IB) and Interface Description Languages (IDL) enable Drag and Drop construction of GUI's are part of man;y Visual Studio(2013)

More information

Desktop software in pkgsrc. Kamil Rytarowski

Desktop software in pkgsrc. Kamil Rytarowski Desktop software in pkgsrc Kamil Rytarowski kamil@netbsd.org whoami(1) Long time GNU/Linux user (since 90ties) NetBSD user since 6.1 NetBSD developer since 2015 pkgsrc contributor Logo of the NetBSD Operating

More information

Designing Reusable Web Components

Designing Reusable Web Components Designing Reusable Web Components Dr. Joonas Lehtinen Vaadin @joonaslehtinen Agenda What do we want to Q & A design? Technology HTML5 / Canvas Google Web Toolkit Vaadin Framework Designing Web Component

More information

Drawing in GTK+ Background. Windows and Clipping. CSci Graphical User Interface Programming Drawing in GTK+ Prof.

Drawing in GTK+ Background. Windows and Clipping. CSci Graphical User Interface Programming Drawing in GTK+ Prof. Background In order to understand how to draw in GTK, you rst have to understand something about how GTK draws widgets, because how GTK draws widgets has an important role in how you design your drawing

More information

A Guided Tour of CLIM, Common Lisp Interface Manager

A Guided Tour of CLIM, Common Lisp Interface Manager A Guided Tour of CLIM, Common Lisp Interface Manager 2006 Update Clemens Fruhwirth The McCLIM Project Original article Ramana Rao Xerox Palo Alto Research Center

More information

MS Word 2007: Graphics. Lesson Notes Author: Pamela Schmidt. The Drawing Tools Format Ribbon appears when the object is selected.

MS Word 2007: Graphics. Lesson Notes Author: Pamela Schmidt. The Drawing Tools Format Ribbon appears when the object is selected. AutoShapes MS Word 2007: Graphics Lesson Notes Author: Pamela Schmidt To insert a shape, on the Insert Ribbon choose the Shapes control. When a shape tool is selected, a cross hair will appear when the

More information

Programming Graphical

Programming Graphical Programming Graphical User Interfaces in R Michael F. Lawrence John Verzani CRC Press Taylorfii Francis Group Boca Raton London NewYork CRC Press Is an imprint of the Taylor & Francis Group an informs

More information

WebGL and GLSL Basics. CS559 Fall 2016 Lecture 14 October

WebGL and GLSL Basics. CS559 Fall 2016 Lecture 14 October WebGL and GLSL Basics CS559 Fall 2016 Lecture 14 October 24 2016 Review Hardware Rasterization For each point: Compute barycentric coords Decide if in or out.7,.7, -.4 1.1, 0, -.1.9,.05,.05.33,.33,.33

More information

Introduction to the Graphics Module Framework

Introduction to the Graphics Module Framework Introduction to the Graphics Module Framework Introduction Unlike the C++ module, which required nothing beyond what you typed in, the graphics module examples rely on lots of extra files - shaders, textures,

More information

MEGACACHE DOCS. Introduction. Particle Simulations. Particle Exporters. Example Videos

MEGACACHE DOCS. Introduction. Particle Simulations. Particle Exporters. Example Videos MEGACACHE DOCS Introduction MegaCache is an editor extension of for the Unity game engine, it allows you to import cached animated mesh geometry regardless of the topology, vertex count, material use etc

More information

Table Basics. The structure of an table

Table Basics. The structure of an table TABLE -FRAMESET Table Basics A table is a grid of rows and columns that intersect to form cells. Two different types of cells exist: Table cell that contains data, is created with the A cell that

More information

Software Compare and Contrast

Software Compare and Contrast Microsoft Software Compare and Contrast Word Easy to navigate. Compatible with all PC computers. Very versatile. There are lots of templates that can be used to create flyers, calendars, resumes, etc.

More information

Extensibility in GNUstep & Étoilé

Extensibility in GNUstep & Étoilé Extensibility in GNUstep & Étoilé GNU Hackers 2011 http://www.gnustep.org http://www.etoileos.com Objective-C & GNUstep Objective-C Created by Brad Cox and Tom Love in 1986 to package C libraries in Smalltalk-like

More information

Lesson 2: GTK+ Basics

Lesson 2: GTK+ Basics 1 A First GTK+ Program We will begin with a very simple GTK+ program in order to demonstrate some of the key tasks that every GTK+ main program must perform. The program, hello_world.c, is found in many

More information

Hex Planet Technical Demo Joel Davis

Hex Planet Technical Demo Joel Davis Hex Planet Technical Demo Joel Davis joeld42@yahoo.com Introduction Recently, on the yahoo Gamedesign-l mailing list, there was a discussion of different techniques for tiling a civ-like grid around a

More information

Getting started with Lazarus

Getting started with Lazarus Getting started with Lazarus Michaël Van Canneyt March 4, 2006 Abstract Lazarus is a cross-platform 2-way RAD tool which can be used to develop almost any kind of program for Windows, Linux, Solaris or

More information

PowerVR Performance Recommendations. The Golden Rules

PowerVR Performance Recommendations. The Golden Rules PowerVR Performance Recommendations Public. This publication contains proprietary information which is subject to change without notice and is supplied 'as is' without warranty of any kind. Redistribution

More information

Using Glogster.com/EDU

Using Glogster.com/EDU Using Glogster.com/EDU A Glog is like a poster, only better. Glogs allow you to create an online poster using photographs, images, graphics, video files and sound files. Glogs allow you to add hyperlinks

More information

Tips and Tricks of E1 Pages in 9.2

Tips and Tricks of E1 Pages in 9.2 Tips and Tricks of E1 Pages in 9.2 Session ID#: 103660 Prepared by: Dwight Moore Senior Associate Grant Thornton LLP #JDEINFOCUS Outline EnterpriseOne Pages Overview Tips 9.1 Classic Pages Tricks 9.2 Composer

More information

Lab 2 Examine More Development Features in IBM Worklight

Lab 2 Examine More Development Features in IBM Worklight Lab 2 Examine More Development Features in IBM Worklight Table of Contents 2. Examine More Development Features in IBM Worklight... 2-3 2.1 Examine the fully-built and styled version of MyMemories...2-4

More information

OpenGL refresher. Advanced Computer Graphics 2012

OpenGL refresher. Advanced Computer Graphics 2012 Advanced Computer Graphics 2012 What you will see today Outline General OpenGL introduction Setting up: GLUT and GLEW Elementary rendering Transformations in OpenGL Texture mapping Programmable shading

More information

DVB-HTML MIDP 2.0 Graphics Architectures for Non-Desktop Devices

DVB-HTML MIDP 2.0 Graphics Architectures for Non-Desktop Devices DVB-HTML MIDP 2.0 Graphics Architectures for Non-Desktop Devices Pablo Cesar pcesar@tml.hut.fi http://www.tml.hut.fi/~pcesar Part I DVB-HTML Part II MIDP 2.0 Part III Outline Graphics Systems in Embedded

More information

Shaders and Textures in Artlantis 2.0 By Gérard Bomer, Abvent

Shaders and Textures in Artlantis 2.0 By Gérard Bomer, Abvent Shaders and Textures in Artlantis 2.0 By Gérard Bomer, Abvent In Artlantis, Shaders and / or Textures are used to define the aspect of materials. In Artlantis there are a few procedural shaders that have

More information

Pipe Driver Overview. Keith Whitwell Nov 13, 2009 Virtual Machine Group

Pipe Driver Overview. Keith Whitwell Nov 13, 2009 Virtual Machine Group Pipe Driver Overview Keith Whitwell Nov 13, 2009 Virtual Machine Group Gallium3D Interface Overview Key aspects: Contexts and Screens Constant state objects Further immediate state Assembly-style tokenized

More information