Visa-Valtteri visy Pimiä or how fumbling my way through pixel-based effects made learning WebGL a lot easier.

Slides:



Advertisements
Similar presentations
Build Amazing Apps with Web Standards Mobile HTML5 Applications In Hours, Not Days.
Advertisements

Samsung Smart TV is a web-based application running on an application engine installed on digital TVs connected to the Internet.
MULTIMEDIA DEVELOPMENT 4.3 : AUTHORING TOOLS. At the end of the lesson, students should be able to: 1. Describe different types of authoring tools Learning.
Aim: Use the given examples to record examples and our own ideas in our journal 1.Write technical examples in journal and/or participate in full.
Introduction to Web Application Architectures Web Application Architectures 18 th March 2005 Bogdan L. Vrusias
Active X Microsoft’s Answer to Dynamic Content Reference: Using Active X by Brian Farrar QUE
Chapter 1 Understanding the Web Design Environment
Chapter 8 – Part I Interactive Multimedia Authoring with Flash: Animation “Computers and Creativity” Richard D. Webster, COSC 109 Instructor Office: 7800.
Development of mobile applications using PhoneGap and HTML 5
SE320: Introduction to Computer Games Week 8: Game Programming Gazihan Alankus.
© 2011 Delmar, Cengage Learning Chapter 8 Building Complex Animations.
COM 205 Multimedia Applications
Chapter Objectives Explain Web page multimedia issues
Paul Trani Adobe Certified Instructor/Expert Resources:
© 2011 Delmar, Cengage Learning Chapter 11 Adding Media and Interactivity with Flash and Spry.
Platforms for Learning in Computer Science July 28, 2005.
WebGL Patrick Cozzi University of Pennsylvania CIS Spring 2012.
Chapter 11-Multimedia Authoring Tools. Overview Introduction to multimedia authoring tools. Types of authoring tools. Cross-platform authoring notes.
MACHINE VISION GROUP Graphics hardware accelerated panorama builder for mobile phones Miguel Bordallo López*, Jari Hannuksela*, Olli Silvén* and Markku.
Thinh Nguyen Spring Thinh Nguyen 5 th year undergrad Dustbusters – Spring 2013.
Introduction to Silverlight. Slide 2 What is Silverlight? It’s part of a Microsoft Web platform called Rich Internet Applications (RIA) There is a service.
BUILDING RICH MEDIA ELEMENTS. Design Decisions Based on Design Specification  Following the design specification will ensure that the application is.
GPU Programming Robert Hero Quick Overview (The Old Way) Graphics cards process Triangles Graphics cards process Triangles Quads.
A.NET desktop application and it’s future And solutions for command line application interoperability.
INTRO TO COMPUTER GRAPHICS TEXT EDWARD ANGEL: EDITION 5 CS770/870
Chapter 11 Adding Sound and Video. Chapter 11 Lessons 1.Work with sound 2.Specify synchronization options 3.Modify sounds 4.Use ActionScript with sound.
COLD FUSION Deepak Sethi. What is it…. Cold fusion is a complete web application server mainly used for developing e-business applications. It allows.
Macromedia Flash CS4. What is Flash CS4? –Animation and interactive authoring program –Tools for complex animation, as well as excellent drawing tools.
A Spring 2005 CS 426 Senior Project By Group 15 John Studebaker, Justin Gerthoffer, David Colborne CSE Dept., University of Nevada, Reno Advisors (CSE.
Programming Games Show your simple video. More video examples. Audio. Classwork/Homework: Produce more complex video program.
Tim Madden ODG/XSD.  Graphics Processing Unit  Graphics card on your PC.  “Hardware accelerated graphics”  Video game industry is main driver.  More.
OpenGL ES Performance (and Quality) on the GoForce5500 Handheld GPU Lars M. Bishop, NVIDIA Developer Technologies.
CS 480/680 Intro Dr. Frederick C Harris, Jr. Fall 2014.
به نام خدا تنظیم کننده : فرانه حدادی استاد : مهندس زمانیان تابستان 92.
Texture Mapping CAP4730: Computational Structures in Computer Graphics.
MonoXNA 3D. Games Fun Relaxation Mind training Profitable business –World of Warcraft (successful game)
Reading Flash. Training target: Read the following reading materials and use the reading skills mentioned in the passages above. You may also choose some.
Contents : What is Silverlight? Silverlight Overview Silverlight Toolkit Overview Timeline & Packaging Silverlight V1.0 & V1.1 Properties of V1.0 Properties.
QPE A Graphical Editor for Modeling using Queueing Petri Nets Christofer Dutz.
WebGL Presentation by: Viet Nguyen.  Final Project Outline  Introduction  History  Support  Implementation  Advantages  Disadvantages  Conclusion.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
Super EastGate Jon Caron, Ryan Fleming, Antonio Guarino, and Mike LoVerme Merrimack College Introduction Super EastGate is a 2D side scroller game that.
Authoring tools There are three main authoring tools:
Chapter 11 Adding Media and Interactivity. Chapter 11 Lessons Introduction 1.Add and modify Flash objects 2.Add rollover images 3.Add behaviors 4.Add.
© 2011 Delmar, Cengage Learning Chapter 11 Adding Sound and Video.
Digital Video. Representing video An array of images Movie = video + audio.
SIN DRILL & Z-DRILL Bhaskar Khaneja Lekha Surasani.
Learning Aim B.  In this section, you will consider the resources necessary for designing your website.  You will also think about any constraints that.
1 CSC160 Chapter 1: Introduction to JavaScript Chapter 2: Placing JavaScript in an HTML File.
GPU Computing for GIS James Mower Department of Geography and Planning University at Albany.
CHAPTER 8 Multimedia 1. Using Multimedia ❖ Multimedia: the combination of text, sound, and video to express an idea or convey a message. ❖ Podcasts: a.
丁建文 國立高雄應用科大資管系副教授 兼任計網中心軟體發展組組長 跨平台行動應用軟體開發技術 : HTML5 & Mobile JavaScript Framework 暨南大學.
Lesson 1 – Getting Started with App Inventor
Build your own 2D Game Engine and Create Great Web Games using HTML5, JavaScript, and WebGL. Sung, Pavleas, Arnez, and Pace, Chapter 5 Examples 1.
How to use a Pixel Shader CMT3317. Pixel shaders There is NO requirement to use a pixel shader for the coursework though you can if you want to You should.
From VIC (VRVS) to ViEVO (EVO) 3 years of experiences with developing of video application VIC for VRVS allowed us to develop a new video application.
Moving from Stencyl 2 to Stencyl 3 & beyond
Features of Authoring Tools
Introduction to OpenGL
CHAPTER 8 Multimedia Authoring Tools
Pre-Production Determine the overall purpose of the project.
Introduction to Silverlight
Who Am I? appMobi's lead HTML5 game developer / evangelist
Introduction to Computer Graphics with WebGL
Introduction to Computer Graphics with WebGL
Debugging Tools Tim Purcell NVIDIA.
CIS 441/541: Introduction to Computer Graphics Lecture 15: shaders
Introduction to OpenGL
Bootstrap Direct quote from source: bootstrap/
OpenGL-Rendering Pipeline
Presentation transcript:

Visa-Valtteri visy Pimiä or how fumbling my way through pixel-based effects made learning WebGL a lot easier

Started doing simple effects with QBASIC Worked my way to Turbo Pascal and VGA programming Got sidetracked to NES and Atari 2600 development Learned OpenGL mostly professionally, then started using GPU-accelerated graphics

Processing makes it possible

Access the screen through a framebuffer, an array of pixel color values, palette index values or bitplane toggles Set pixel color values according to position, time, function value etc.

I started making small games and demo-style little programs Everything was always coded for one single production, with no mind put into reusability of the tools This got old pretty quickly and I found myself toying with the idea of a visual editor for demos

Trilobit ScriPtable Lua Interactive MultiplatForm Tackles a multitude of problems I had with development: Inherently multiplatform (OSX, Win32, Linux) because all the GL calls are coded with Lua. All visual code is reloadable without relaunching or recompiling the program The demo player is seekable and supports setting sync points The demo is the editor Always open source

Timeline file millisecond syncing of demo parts FFT beat sync for effects Seeking for testing

Fixed OpenGL version, upgrading would require recompiling the Lua libraries for all the three platforms No shader support Terrible hacks for texture handling The OpenGL / Lua bound version I used was found to be rather incomplete

Counter Intelligence Program by Bilotrip

After I heard about WebGL I got the idea of doing something like S.P.L.I.F in the browser with easily reloadable and tweakable visuals WebGL has shaders, so the natural choice was to enable the editing of shader parameters (in addition for JavaScript variables) realtime

WebGL canvas for the output Pure JavaScript + HTML5 + CSS3 for the UI Textures loaded from PNG files HTML5 audio from OGG file Timeline.js used for the keyframe editor

No real timeline dumping (cut & paste from export windows) Shader code still requires reloading of the page HTML5 audio support is still rather flaky cross browsers, and require some time to mature No cross-browser FFT support for sound analysis WebGL is still not available for mobile browsers or Internet Explorer

WebGL _is_ a W3 standard, and pretty much all major browser except Internet Explorer have support for it in development roadmaps No plugins required anymore for GPU accelerated content and complex video/audio data processing and playback No third party components required

Pixel shaders are pretty similar to framebuffers in many ways Can set single resolution independent fragments instead of toggling actual pixels on the screen Many fragments are calculated concurrently on the GPU, so the shader program is run in parallel.

I tend to avoid calculating complex geometries and like to play around with fragments on a single quad Complex blending and processing passes possible with the GPU -> enables effects that are just simply impossible to do on a framebuffer with a fast FPS

Demonstration MKULTRA by Bilotrip

Thank you for listening!