This document summarizes a lecture on vector graphics and path rendering. It discusses topics like Bézier curves, vector graphic standards, the differences between 3D rendering and path rendering, filling and stroking paths, offset curves for stroking, and challenges with path rendering like sharp turns and overlapping control points. Hard cases are shown where different path rendering implementations produce differing results. Rasterization rules and avoiding conflation artifacts are also covered.
Introduction to Skia by Ryan Chou @20141008Ryan Chou
This introduces the fundamental knowledge about Skia which is open-source project used in Android. In this, it contains the history of skia, and the roll of skia in Android.
NVIDIA OpenGL and Vulkan Support for 2017Mark Kilgard
Learn how NVIDIA continues improving both Vulkan and OpenGL for cross-platform graphics and compute development. This high-level talk is intended for anyone wanting to understand the state of Vulkan and OpenGL in 2017 on NVIDIA GPUs. For OpenGL, the latest standard update maintains the compatibility and feature-richness you expect. For Vulkan, NVIDIA has enabled the latest NVIDIA GPU hardware features and now provides explicit support for multiple GPUs. And for either API, NVIDIA's SDKs and Nsight tools help you develop and debug your application faster.
NVIDIA booth theater presentation at SIGGRAPH in Los Angeles, August 1, 2017.
http://www.nvidia.com/object/siggraph2017-schedule.html?id=sig1732
Get your SIGGRAPH driver release with OpenGL 4.6 and the latest Vulkan functionality from
https://developer.nvidia.com/opengl-driver
Siggraph 2016 - Vulkan and nvidia : the essentialsTristan Lorach
This presentation introduces Vulkan components, what you must know to start using this new API. And what you must know when using it on NVIDIA hardware
Introduction to Skia by Ryan Chou @20141008Ryan Chou
This introduces the fundamental knowledge about Skia which is open-source project used in Android. In this, it contains the history of skia, and the roll of skia in Android.
NVIDIA OpenGL and Vulkan Support for 2017Mark Kilgard
Learn how NVIDIA continues improving both Vulkan and OpenGL for cross-platform graphics and compute development. This high-level talk is intended for anyone wanting to understand the state of Vulkan and OpenGL in 2017 on NVIDIA GPUs. For OpenGL, the latest standard update maintains the compatibility and feature-richness you expect. For Vulkan, NVIDIA has enabled the latest NVIDIA GPU hardware features and now provides explicit support for multiple GPUs. And for either API, NVIDIA's SDKs and Nsight tools help you develop and debug your application faster.
NVIDIA booth theater presentation at SIGGRAPH in Los Angeles, August 1, 2017.
http://www.nvidia.com/object/siggraph2017-schedule.html?id=sig1732
Get your SIGGRAPH driver release with OpenGL 4.6 and the latest Vulkan functionality from
https://developer.nvidia.com/opengl-driver
Siggraph 2016 - Vulkan and nvidia : the essentialsTristan Lorach
This presentation introduces Vulkan components, what you must know to start using this new API. And what you must know when using it on NVIDIA hardware
Presented September 30, 2009 in San Jose, California at GPU Technology Conference.
Describes the new features of OpenGL 3.2 and NVIDIA's extensions beyond 3.2 such as bindless graphics, direct state access, separate shader objects, copy image, texture barrier, and Cg 2.2.
Slides from Android Builder's Summit 2014 in San Jose, CA
In this talk I describe the internal workings of the Android graphics stack from the Application layer down through the stack to pixels on the screen. It is a fairly complex journey, taking in two different 2D rendering engines, applications calling OpenGL ES directory, passing buffers on to the system compositor, SurfaceFlinger, and then down to the display controller or frame buffer.
Presented as a pre-conference tutorial at the GPU Technology Conference in San Jose on September 20, 2010.
Learn about NVIDIA's OpenGL 4.1 functionality available now on Fermi-based GPUs.
Android graphic system (SurfaceFlinger) : Design Pattern's perspectiveBin Chen
SurfaceFlinger is a vital system service in Android system, responsible for the composting all the application and system layer and displaying them. In this slide,we looked in detail how surfaceFlinger was designed from Design Pattern's perspective.
게임엔진과 공간정보 3D 콘텐츠 융합 : Cesium for UnrealKyu-sung Choi
강력한 시각화와 몰입도 높은 가상세계 표현을 위해, 게임엔진은 측량기반의 콘텐츠를 필요로 하고 공간정보 3D 플랫폼은 강력한 프리미엄급 클라이언트를 필요로 하는데, Cesium for Unreal은 이런 수요를 만족하는 솔루션입니다. 이 발표자료는 공간정보 3D 콘텐츠가 어떻게 게임엔진 안으로 들어가서 국가 또는 지구 범위로 확장성을 발휘하는지, 그 기능구현을 진입단계 수준으로 소개하고 있습니다.
In the session from Game Developers Conference 2011, we'll take a complete look at the terrain system in Frostbite 2 as it was applied in Battlefield 3. The session is partitioned into three parts. We begin with the scalability aspects and discuss how consistent use of hierarchies allowed us to combine high resolutions with high view distances. We then turn towards workflow aspects and describe how we achieved full in-game realtime editing. A fair amount of time is spent describing how issues were addressed.
Finally, we look at the runtime side. We describe usage of CPU, GPU and memory resources and how it was kept to a minimum. We discuss how the GPU is offloaded by caching intermediate results in a procedural virtual texture and how prioritization was done to allow for work throttling without sacrificing quality. We also go into depth about the flexible streaming system that work with both FPS and driving games.
How we optimized our Game - Jake & Tess' Finding Monsters AdventureFelipe Lira
Presentation I gave at Unite Boston 2015. I'll cover a few techniques we used to optimize our Unity mobile game - Jake & Tess' Finding Monsters Adventure
OpenGL NVIDIA Command-List: Approaching Zero Driver OverheadTristan Lorach
This presentation introduces a new NVIDIA extension called Command-list.
The purpose of this presentation is to explain the basic concepts on how to use it and show what are the benefits.
The sample I used for the talk is here: https://github.com/nvpro-samples/gl_commandlist_bk3d_models
The driver for trying should be PreRelease 347.09
http://www.nvidia.com/download/driverResults.aspx/80913/en-us
Recorded video here:
http://on-demand.gputechconf.com/siggraph/2017/video/sig1757-tristan-lorach-vkFX-effective-approach-for-vulkan-api.html
Vulkan is a complex low-level API, full of structures and dedicated objects. Using it may be tedious and often leads to complicated source code. We propose here a way to define and use Vulkan components in a convenient and readable way. Then we will show how this infrastructure allows to introduce and use higher concepts, such as Techniques, Passes; and even how to instantiate resources, render-targets right from within the effect, making it self-sufficient and consistent as a general description. The overall purpose of this open-source project is to improve and enhance the use of Vulkan API, while keeping its strength and flexibility. This project can run in two different ways: either as a compiler generating C++ code for you; or at runtime, to load effects and use them right away.
vkFx comes from a former project called nvFx, presented few years ago. While nvFx was intended to be Generic (OpenGL & D3D compliant), vkFx is Vulkan-specific: so the project is thin and doesn’t break important paradigms that Vulkan requires to stay powerful.
Vulkan and DirectX12 share many common concepts, but differ vastly from the APIs most game developers are used to. As a result, developing for DX12 or Vulkan requires a new approach to graphics programming and in many cases a redesign of the Game Engine. This lecture will teach the basic concepts common to Vulkan and DX12 and help developers overcome the main problems that often appear when switching to one of the new APIs. It will explain how those new concepts will help games utilize the hardware more efficiently and discuss best practices for game engine development.
For more, visit http://developer.amd.com/
Do Not just learn computer graphics an close your computer tab and go away..
APPLY them in real business,
Visit Daroko blog for real IT skills applications,androind, Computer graphics,Networking,Programming,IT jobs Types, IT news and applications,blogging,Builing a website, IT companies and how you can form yours, Technology news and very many More IT related subject.
-simply google:Daroko blog(professionalbloggertricks.com)
• Daroko blog (www.professionalbloggertricks.com)
• Presentation by Daroko blog, to see More tutorials more than this one here, Daroko blog has all tutorials related with IT course, simply visit the site by simply Entering the phrase Daroko blog (www.professionalbloggertricks.com) to search engines such as Google or yahoo!, learn some Blogging, affiliate marketing ,and ways of making Money with the computer graphic Applications(it is useless to learn all these tutorials when you can apply them as a student you know),also learn where you can apply all IT skills in a real Business Environment after learning Graphics another computer realate courses.ly
• Be practically real, not just academic reader
Presented September 30, 2009 in San Jose, California at GPU Technology Conference.
Describes the new features of OpenGL 3.2 and NVIDIA's extensions beyond 3.2 such as bindless graphics, direct state access, separate shader objects, copy image, texture barrier, and Cg 2.2.
Slides from Android Builder's Summit 2014 in San Jose, CA
In this talk I describe the internal workings of the Android graphics stack from the Application layer down through the stack to pixels on the screen. It is a fairly complex journey, taking in two different 2D rendering engines, applications calling OpenGL ES directory, passing buffers on to the system compositor, SurfaceFlinger, and then down to the display controller or frame buffer.
Presented as a pre-conference tutorial at the GPU Technology Conference in San Jose on September 20, 2010.
Learn about NVIDIA's OpenGL 4.1 functionality available now on Fermi-based GPUs.
Android graphic system (SurfaceFlinger) : Design Pattern's perspectiveBin Chen
SurfaceFlinger is a vital system service in Android system, responsible for the composting all the application and system layer and displaying them. In this slide,we looked in detail how surfaceFlinger was designed from Design Pattern's perspective.
게임엔진과 공간정보 3D 콘텐츠 융합 : Cesium for UnrealKyu-sung Choi
강력한 시각화와 몰입도 높은 가상세계 표현을 위해, 게임엔진은 측량기반의 콘텐츠를 필요로 하고 공간정보 3D 플랫폼은 강력한 프리미엄급 클라이언트를 필요로 하는데, Cesium for Unreal은 이런 수요를 만족하는 솔루션입니다. 이 발표자료는 공간정보 3D 콘텐츠가 어떻게 게임엔진 안으로 들어가서 국가 또는 지구 범위로 확장성을 발휘하는지, 그 기능구현을 진입단계 수준으로 소개하고 있습니다.
In the session from Game Developers Conference 2011, we'll take a complete look at the terrain system in Frostbite 2 as it was applied in Battlefield 3. The session is partitioned into three parts. We begin with the scalability aspects and discuss how consistent use of hierarchies allowed us to combine high resolutions with high view distances. We then turn towards workflow aspects and describe how we achieved full in-game realtime editing. A fair amount of time is spent describing how issues were addressed.
Finally, we look at the runtime side. We describe usage of CPU, GPU and memory resources and how it was kept to a minimum. We discuss how the GPU is offloaded by caching intermediate results in a procedural virtual texture and how prioritization was done to allow for work throttling without sacrificing quality. We also go into depth about the flexible streaming system that work with both FPS and driving games.
How we optimized our Game - Jake & Tess' Finding Monsters AdventureFelipe Lira
Presentation I gave at Unite Boston 2015. I'll cover a few techniques we used to optimize our Unity mobile game - Jake & Tess' Finding Monsters Adventure
OpenGL NVIDIA Command-List: Approaching Zero Driver OverheadTristan Lorach
This presentation introduces a new NVIDIA extension called Command-list.
The purpose of this presentation is to explain the basic concepts on how to use it and show what are the benefits.
The sample I used for the talk is here: https://github.com/nvpro-samples/gl_commandlist_bk3d_models
The driver for trying should be PreRelease 347.09
http://www.nvidia.com/download/driverResults.aspx/80913/en-us
Recorded video here:
http://on-demand.gputechconf.com/siggraph/2017/video/sig1757-tristan-lorach-vkFX-effective-approach-for-vulkan-api.html
Vulkan is a complex low-level API, full of structures and dedicated objects. Using it may be tedious and often leads to complicated source code. We propose here a way to define and use Vulkan components in a convenient and readable way. Then we will show how this infrastructure allows to introduce and use higher concepts, such as Techniques, Passes; and even how to instantiate resources, render-targets right from within the effect, making it self-sufficient and consistent as a general description. The overall purpose of this open-source project is to improve and enhance the use of Vulkan API, while keeping its strength and flexibility. This project can run in two different ways: either as a compiler generating C++ code for you; or at runtime, to load effects and use them right away.
vkFx comes from a former project called nvFx, presented few years ago. While nvFx was intended to be Generic (OpenGL & D3D compliant), vkFx is Vulkan-specific: so the project is thin and doesn’t break important paradigms that Vulkan requires to stay powerful.
Vulkan and DirectX12 share many common concepts, but differ vastly from the APIs most game developers are used to. As a result, developing for DX12 or Vulkan requires a new approach to graphics programming and in many cases a redesign of the Game Engine. This lecture will teach the basic concepts common to Vulkan and DX12 and help developers overcome the main problems that often appear when switching to one of the new APIs. It will explain how those new concepts will help games utilize the hardware more efficiently and discuss best practices for game engine development.
For more, visit http://developer.amd.com/
Do Not just learn computer graphics an close your computer tab and go away..
APPLY them in real business,
Visit Daroko blog for real IT skills applications,androind, Computer graphics,Networking,Programming,IT jobs Types, IT news and applications,blogging,Builing a website, IT companies and how you can form yours, Technology news and very many More IT related subject.
-simply google:Daroko blog(professionalbloggertricks.com)
• Daroko blog (www.professionalbloggertricks.com)
• Presentation by Daroko blog, to see More tutorials more than this one here, Daroko blog has all tutorials related with IT course, simply visit the site by simply Entering the phrase Daroko blog (www.professionalbloggertricks.com) to search engines such as Google or yahoo!, learn some Blogging, affiliate marketing ,and ways of making Money with the computer graphic Applications(it is useless to learn all these tutorials when you can apply them as a student you know),also learn where you can apply all IT skills in a real Business Environment after learning Graphics another computer realate courses.ly
• Be practically real, not just academic reader
Presented at the GPU Technology Conference 2012 in San Jose, California.
Tuesday, May 15, 2012.
Standards such as Scalable Vector Graphics (SVG), PostScript, TrueType outline fonts, and immersive web content such as Flash depend on a resolution-independent 2D rendering paradigm that GPUs have not traditionally accelerated. This tutorial explains a new opportunity to greatly accelerate vector graphics, path rendering, and immersive web standards using the GPU. By attending, you will learn how to write OpenGL applications that accelerate the full range of path rendering functionality. Not only will you learn how to render sophisticated 2D graphics with OpenGL, you will learn to mix such resolution-independent 2D rendering with 3D rendering and do so at dynamic, real-time rates.
SIGGRAPH 2012: GPU-Accelerated 2D and Web RenderingMark Kilgard
Video replay: http://nvidia.fullviewmedia.com/siggraph2012/ondemand/SS106.html
Location: West Hall Meeting Room 503, Los Angeles Convention Center
Date: Wednesday, August 8, 2012
Time: 2:40 PM – 3:40 PM
The future of GPU-based visual computing integrates the web, resolution-independent 2D graphics, and 3D to maximize interactivity and quality while minimizing consumed power. See what NVIDIA is doing today to accelerate resolution-independent 2D graphics for web content. This presentation explains NVIDIA's unique "stencil, then cover" approach to accelerating path rendering with OpenGL and demonstrates the wide variety of web content that can be accelerated with this approach.
More information: http://developer.nvidia.com/nv-path-rendering
Preprint for SIGGRAPH Asia 2012
Copyright ACM, 2012
For thirty years, resolution-independent 2D standards (e.g. PostScript,
SVG) have depended on CPU-based algorithms for the filling and
stroking of paths. However advances in graphics hardware have largely
ignored the problem of accelerating resolution-independent 2D graphics
rendered from paths.
Our work builds on prior work to re-factor the path rendering task
to leverage existing capabilities of modern pipelined and massively
parallel GPUs. We introduce a two-step “Stencil, then Cover” (StC)
paradigm that explicitly decouples path rendering into one GPU
step to determine a path’s filled or stenciled coverage and a second
step to rasterize conservative geometry intended to test and reset the
coverage determinations of the first step while shading color samples
within the path. Our goals are completeness, correctness, quality, and
performance—but we go further to unify path rendering with OpenGL’s
established 3D rendering pipeline. We have built and productized our
approach to accelerate path rendering as an OpenGL extension.
Understanding Hardware Acceleration on Mobile BrowsersAriya Hidayat
GPU acceleration on mobile browsers, if it is leveraged correctly, can lead to a smooth and fluid applications, thus improving the user experience. There has been a lot of mentions and best practices of hardware acceleration these days, although so far it has been pretty general and hasn’t provided much technical direction apart from simple magical advice such as “use translate3d”. This talk sheds some more light on browser interactions with the GPU and explain what happens behind the scenes, covering the topic of acceleration of primitive drawing, the use of tiled backing store, and composited layer. Knowing the actual machinery behind hardware acceleration, you will be in the position to plan your strategy to improve the performance of your web application.
Resource-Oriented Architecture offers advantages over other web-service architectures. It is based on a simple, scalable and highly standardised application-level protocol. Multimedia content is commonly managed using the MPEG-7. The MPEG-7 is a standard for representing audiovisual information that satisfies specific requirements based on syntax, semantic and decoding. Content descriptions under MPEG-7 can be organised and characterized without ambiguity. The MPEG-7 eXperimental Model (XM) includes the best performing tools for MPEG-7 normative and non-normative elements. In this paper, multimedia content is managed using the MPEG-7 eXperimental Model functionalities and provided using web-services technology. RESTful principles are the guidelines for achieving multimedia content storage and retrieval. Quantitative evaluation of the proposed web services has shown that this approach has better performance, in term of retrieval speed and storage space
D11: a high-performance, protocol-optional, transport-optional, window system...Mark Kilgard
Consider the dual pressures toward a more tightly integrated workstation window system: 1) the need to efficiently handle high bandwidth services such as video, audio, and three-dimensional graphics; and 2) the desire to achieve the under-realized potential for local window system performance in X11.
This paper proposes a new window system architecture called D11 that seeks higher performance while preserving compatibility with the industry-standard X11 window system. D11 reinvents the X11 client/server architecture using a new operating system facility similar in concept to the Unix kernel's traditional implementation but designed for user-level execution. This new architecture allows local D11 programs to execute within the D11 window system kernel without compromising the window sytem's integrity. This scheme minimizes context switching, eliminates protocol packing and unpacking, and greatly reduces data copying. D11 programs fall back to the X11 protocol when running remote or connecting to an X11 server. A special D11 program acts as an X11 protocol translator to allow X11 programs to utilize a D11 window system.
[The described system was never implemented.]
EXT_window_rectangles extends OpenGL with a new per-fragment test called the "window rectangles test" for use with FBOs that provides 8 or more inclusive or exclusive rectangles for rasterized fragments. Applications of this functionality include web browsers and virtual reality.
Slides: Accelerating Vector Graphics Rendering using the Graphics Hardware Pi...Mark Kilgard
Slides for SIGGRAPH paper presentation of "Accelerating Vector Graphics Rendering using the Graphics Hardware Pipeline".
Presented by Vineet Batra (Adobe) on Thursday, August 13, 2015 at 2:00 pm - 3:30 pm, Los Angeles Convention Center, Room 150/151.
Accelerating Vector Graphics Rendering using the Graphics Hardware PipelineMark Kilgard
SIGGRAPH 2015 paper.
We describe our successful initiative to accelerate Adobe Illustrator with the graphics hardware pipeline of modern GPUs. Relying on OpenGL 4.4 plus recent OpenGL extensions for advanced blend modes and first-class GPU-accelerated path rendering, we accelerate the Adobe Graphics Model (AGM) layer responsible for rendering sophisticated Illustrator scenes. Illustrator documents render in either an RGB or CMYK color mode. While GPUs are designed and optimized for RGB rendering, we orchestrate OpenGL rendering of vector content in the proper CMYK color space and accommodate the 5+ color components required. We support both non-isolated and isolated transparency groups, knockout, patterns, and arbitrary path clipping. We harness GPU tessellation to shade paths smoothly with gradient meshes. We do all this and render complex Illustrator scenes 2 to 6x faster than CPU rendering at Full HD resolutions; and 5 to 16x faster at Ultra HD resolutions.
NV_path_rendering is an OpenGL extension for GPU-accelerated path rendering. Recent functionality improvements provide better performance, better typography, rounded rectangles, conics, and OpenGL ES support. This functionality is available today with NVIDIA's 337.88 drivers.
The latest NV_path_rendering specification documents these new functional improvements:
https://www.opengl.org/registry/specs/NV/path_rendering.txt
You can find sample code here:
https://github.com/markkilgard/NVprSDK
presented at SIGGRAPH 2014 in Vancouver during NVIDIA's "Best of GTC" sponsored sessions
http://www.nvidia.com/object/siggraph2014-best-gtc.html
Watch the replay that includes a demo of GPU-accelerated Illustrator and several OpenGL 4 demos running on NVIDIA's Tegra Shield tablet.
http://www.ustream.tv/recorded/51255959
Find out more about the OpenGL examples for GameWorks:
https://developer.nvidia.com/gameworks-opengl-samples
SIGGRAPH Asia 2012: GPU-accelerated Path RenderingMark Kilgard
Presented at SIGGRAPH Asia 2012 in Singapore on Friday, 30 November 14:15 - 16:00 during the "Points and Vectors" session.
Find the paper at http://developer.nvidia.com/game/gpu-accelerated-path-rendering or on Slideshare.
For thirty years, resolution-independent 2D standards (e.g. PostScript, SVG) have relied largely on CPU-based algorithms for the filling and stroking of paths. Learn about our approach to accelerate path rendering with our GPU-based "Stencil, then Cover" programming interface. We've built and productized our OpenGL-based system.
SIGGRAPH Asia 2012 Exhibitor Talk: OpenGL 4.3 and BeyondMark Kilgard
Location: Conference Hall K, Singapore EXPO
Date: Thursday, November 29, 2012
Time: 11:00 AM - 11:50 PM
Presenter: Mark Kilgard (Principal Software Engineer, NVIDIA, Austin, Texas)
Abstract: Attend this session to get the most out of OpenGL on NVIDIA Quadro and GeForce GPUs. Learn about the new features in OpenGL 4.3, particularly Compute Shaders. Other topics include bindless graphics; Linux improvements; and how to best use the modern OpenGL graphics pipeline. Learn how your application can benefit from NVIDIA's leadership driving OpenGL as a cross-platform, open industry standard.
Topic Areas: Computer Graphics; Development Tools & Libraries; Visualization; Image and Video Processing
Level: Intermediate
Video replay: http://nvidia.fullviewmedia.com/siggraph2012/ondemand/SS104.html
Date: Wednesday, August 8, 2012
Time: 11:50 AM - 12:50 PM
Location: SIGGRAPH 2012, Los Angeles
Attend this session to get the most out of OpenGL on NVIDIA Quadro and GeForce GPUs. Learn about the new features in OpenGL 4.3, particularly Compute Shaders. Other topics include bindless graphics; Linux improvements; and how to best use the modern OpenGL graphics pipeline. Learn how your application can benefit from NVIDIA's leadership driving OpenGL as a cross-platform, open industry standard.
Get OpenGL 4.3 beta drivers for NVIDIA GPUs from http://www.nvidia.com/content/devzone/opengl-driver-4.3.html
Presented at the GPU Technology Conference 2012 in San Jose, California.
Monday, May 14, 2012.
Attend this session to get the most out of OpenGL on NVIDIA Quadro and GeForce GPUs. Topics covered include the latest advances available for Cg 3.1, the OpenGL Shading Language (GLSL); programmable tessellation; improved support for Direct3D conventions; integration with Direct3D and CUDA resources; bindless graphics; and more. When you utilize the latest OpenGL innovations from NVIDIA in your graphics applications, you benefit from NVIDIA's leadership driving OpenGL as a cross-platform, open industry standard.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
3. CS 354 3
My Office Hours
Tuesday, before class
Painter (PAI) 5.35
8:45 a.m. to 9:15
Thursday, after class
ACE 6.302
11:00 a.m. to 12
Randy’s office hours
Monday & Wednesday
11 a.m. to 12:00
Painter (PAI) 5.33
4. CS 354 4
Last time, this time
Last lecture, we discussed
Bezier curves
This lecture
Resolution-independent 2D graphics
Path rendering
Projects
Schedule demos with TA for Project 2
Project 3 due Wednesday, April 18, 2012
Get started!
5. CS 354 5
On a sheet of paper
Daily Quiz • Write your EID, name, and date
• Write #1, #2, #3, followed by its answer
How many control points Multiple choice:
are used to define a cubic Geometric continuity
Bézier curve? across two curved
segments always means
Multiple choice: What
percent of a Bézier curve a) The two segments are
is contained within the identical
convex hull of its control
b) The shared end points
points? of the segments have the
same tangent magnitude
a) 33.33%
b) 50% c) The shared edge points
c) 66.66% have the identical tangent
d) 100% directions
d) The shared end points
are Euclidean variant
means
6. CS 354 6
Project 3
Accept Biovision Hierarchy (BVH) files
containing motion capture data
Hierarchy of affine transformations
Visualize a stick figure
Animate the figure
7. CS 354 7
Vector Graphics
Confusing term
Used to describe several kinds of graphics
Wireframe rendering
Plotting or calligraphic rendering
HP DesignJet
Resolution-independent 2D graphics
Scalable Vector Graphics (SVG)
8. CS 354 8
Taxonomy of Rendering
scene
dimensionality
2D 3D
resolution processes primitives
independence or samples
independent dependent primitives samples
path 2D primitive 3D primitive ray
rendering rasterization rasterization tracing
Examples Examples Examples Examples
PostScript, PDF, GDI, Xlib OpenGL, Mental Ray
SVG, TrueType, Direct3D
Adobe Flash,
Microsoft Silverlight, Notice large number of path rendering standards
Apple Quartz 2D
9. CS 354 9
Path Rendering Standards
Document Resolution- Immersive 2D Graphics Office
Printing and Independent Web Programming Productivity
Exchange Fonts Experience Interfaces Applications
Java 2D
API
OpenType Flash
QtGui
API
TrueType
Scalable Mac OS X
Vector 2D API Adobe Illustrator
Graphics
Open XML
Paper (XPS) Inkscape
Open Source
10. CS 354 10
scene
dimensionality
2D 3D
resolution processes primitives
independence or samples
independent dependent primitives samples
path 2D primitive 3D primitive ray
rendering rasterization rasterization tracing
Examples Examples Examples Examples
PostScript, PDF, GDI, Xlib OpenGL, Mental Ray
SVG, TrueType, Direct3D
Adobe Flash,
Microsoft Silverlight,
Apple Quartz 2D
GPUs already excel at these rendering paradigms
11. 11
3D Rendering vs. Path Rendering
CS 354
Characteristic GPU 3D rendering Path rendering
Dimensionality Projective 3D 2D, typically affine
Pixel mapping Resolution independent Resolution independent
Occlusion Depth buffering Painter’s algorithm
Rendering primitives Points, lines, triangles Paths
Primitive constituents Vertices Control points
Constituents per primitive 1, 2, or 3 respectively Unbounded
Topology of filled primitives Always convex Can be concave, self-intersecting,
and have holes
Degree of primitives 1st order (linear) Up to 3rd order (cubic)
Rendering modes Filled, wire-frame Filling, stroking
Line properties Width, stipple pattern Width, dash pattern, capping, join
style
Color processing Programmable shading Painting + filter effects
Text rendering No direct support (2nd class support) Omni-present (1st class support)
Raster operations Blending Brushes, blend modes,
compositing
Color model RGB or sRGB RGB, sRGB, CYMK, or grayscale
Clipping operations Clip planes, scissoring, stenciling Clipping to an arbitrary clip path
Coverage determination Per-color sample Sub-color sample
12. CS 354 12
scene
dimensionality
2D 3D
resolution processes primitives
independence or samples
independent dependent primitives samples
path 2D primitive 3D primitive ray
rendering rasterization rasterization tracing
Examples Examples Examples Examples
PostScript, PDF, GDI, Xlib OpenGL, Mental Ray
SVG, TrueType, Direct3D
Adobe Flash,
Microsoft Silverlight,
Apple Quartz 2D
Conventional wisdom says
GPUs aren’t well-positioned for
accelerating these rendering paradigms
Conventional wisdom is WRONG—though rest of this lecture
focuses on just path rendering
13. CS 354 13
Seminal Path Rendering Paper
John Warnock & Douglas Wyatt, Xerox PARC
Presented SIGGRAPH 1982
Warnock with Chuck Geschke founds Adobe Systems
same year
$20.1 billion market capitalization today (NVDA + AMD = $14.3 B)
John Warnock Chuck Geschke
14. CS 354 14
Filling vs. Stroking Paths
just filling just stroking
filling + stroke =
intended content
15. CS 354 15
Content Defined by Control Points
Bezier Control points!
21. CS 354 21
What does “Inside” Mean for a
Filled Path?
Two fill rules: even-odd & non-zero
even-odd non-zero
counting enters and leaves
for even-odd fill mode
22. CS 354 22
Holes Can Be Authored or Avoided
outer = clockwise outer = clockwise
inner = counter-clockwise inner = clockwise
even-odd non-zero
23. CS 354 23
Scan-line Edge Algorithms
Intersect path edges with scan-line lines
Then find & color pixels “inside” path edges
Quite sequential algorithm
24. CS 354 24
Filling of Segmented Path by Adding
and Subtracting Coverage
Incremental steps to determine the filled
coverage of a path constructed from line
segments
Next step is to extend this to curved path
segments…
25. CS 354 25
Filling of Curved Path by Adding
and Subtracting Coverage
Each (order-independent) step
adds or subtracts coverage
with the next being the curved
path region.
Credit: [Rueda et.al. 2008]
26. CS 354 26
Handling Curved Edges
Conventional CPU approach
Sub-divide curved edges until pixel-sized
Loop & Blinn [2005] show a better way
Use GPU to “discard” samples efficiently
Example shader for quadratic Bezier curve
if (s*s > t) discard;
27. CS 354 27
Massively Parallel GPU-accelerated
Path Rendering Visualized
Anchored triangle Anchored triangle
fans geometry fans net stencil
Stencil =1
Path commands
and control points Resulting net
coverage in stencil
Curved segment Curved segment
geometry net stencil
Stencil -1
Stencil +1
Credit: [Kokoji 2006]
28. CS 354 28
Stroking: Pen Analogy
Pull a pen along the path
The pen’s “tip” should be
Centered on the path
Orthogonal to the path
Mathematical version of this
Offset curves
Studied by Leibniz as parallel curves
Requires higher-order curves to express
Offset curve of arbitrary cubic curve = 10th order
Offset curve of arbitrary quadratic curve = 6th order
29. CS 354 29
Tiger with Stroking
Stroking offsets features (whiskers, etc.)
filled & stroked stroked only
30. CS 354 30
Diagram of Circles Sweeping a Generating
Curve to Generate Offset Curves
green = generating curve
red = “positive” offset curve
blue = “negative” offset curve
31. CS 354 31
Offset Curve Examples
black = generating curve
red = offset curve (at two different offset radii)
32. CS 354 32
Offset Curves
Form Complex Cusps!
black = generating curve
red = offset curve (at two different offset radii)
33. CS 354 33
Stroking is Hard
Topological occur with increasing stroke width
Holes can fill in when stroke width increases
radius=1 radius=13
radius=22
radius=46
34. CS 354 34
Stroking Can Be Large Share of
Relative Frame Time
Visualizing relative cost in normalize frame time
Percent of Path Rendering Frame Time
100%
90%
80%
70%
151 paths
60% 1,384 path commands
Path Stroking 6,370 coordinates
50% Path Filling
Present/Swap Overhead 1024x1024
40% 16 samples/pixel
for OpenGL
30%
20% Test configuration
Core i7 @ 3.07 Ghz
10%
GeForce GT 430
0%
OpenGL Direct2D GPU Direct2D Warp Qt Skia Cairo OpenVG RI
Fast CPU, slow GPU
Path Rendering Implementation
35. CS 354 35
Cubic Bezier folding situation
Cubic path segment has limited parametric
extent
Algebraic rasterization has to respect that extent
Image: Tero Karras
36. CS 354 36
Sharp turns
Butt end caps create non-linear
boundaries on the stroked path segment
Image: Tero Karras
37. CS 354 37
Butt cases
End of curve overlaps curve itself
Image: Tero Karras
38. CS 354 38
Butt cases
Butt ends intersect each other
Image: Tero Karras
41. CS 354 41
Single stroked cubic
Comparing Six Path Renderers segment overlapped;
on a Hard Case there should be a small hole
feathers?
NV_path_rendering Cairo Direct2D
Skia Qt OpenVG Reference Imp.
weird big holes weird big holes
42. CS 354 42
Single stroked cubic
Comparing Six Path Renderers with tight control points;
on Another Hard Case should look like butterfly
feathers?
NV_path_rendering Cairo Direct2D
Skia Qt OpenVG Reference Imp.
tessellation visible curves “smooshed” in
43. CS 354 43
Rasterization Rules
Pixels are blended once per path
Semi-opaque objects are common
Implies a two step process
1. Determine stencil of path’s filled or stroked
region
2. Then paint that region
Porter-Duff compositing operations apply
Partial coverage is converted to alpha
Careful about conflation!
44. CS 354 44
Conflation Artifacts
Happens whenever coverage is converted into
alpha term
Common when paths share exact seams
conflation free lots of conflation
45. CS 354
Real 45
Flash
Scene
same scene, GPU-rendered
without conflation
conflation
artifacts abound,
rendered by Skia
conflation is aliasing &
edge coverage percents
are un-predicable in general;
means conflated pixels
flicker when animated slowly
46. CS 354 46
Artists Can Easily Contribute to
Conflation Artifacts
Consider this American Samoa Seal scene
Zooming into the detail shows some artifacts
in the hashing
Everything in scene is 100% opaque, but
conflation leads to ghosting
conflation
artifacts
NVpr-rendered: good, no conflation Skia-rendered: bad, shows conflation
48. CS 354 48
Dashing of Stroked Paths
Artist made
windows with
Same cake dashed line
missing dashed segment
stroking details
Technical diagrams
and charts often
employ dashing
Frosting on cake is dashed
elliptical arcs with round
end caps for “beaded” look;
flowers are also dashing
Dashing character outlines for quilted look
50. CS 354 50
Glyphs Outlines Have Control Points
Cubic Bezier control points
Typical of PostScript fonts
4 control points per curved segments
51. CS 354 51
Glyphs Outlines Have Control Points
Quadratic Bezier Curves
Typical of TrueType fonts
3 control points per curved segments
52. CS 354 52
Clipping Paths by Arbitrary Paths
unclipped tiger tiger with pink background
clipped to heart
53. CS 354 53
Complex Clipping Example
cowboy clip is
tiger is 240 paths the union of 1,366 paths
result of clipping tiger
to the union of all the
cowboy paths
54. CS 354 54
Color Gradients
No per-vertex color as
in OpenGL
Since no vertexes!
Instead color
assigned with
Constant color
Linear gradients
Radial gradients
Image gradients
55. CS 354 55
Gradient Examples
Artists do amazing things with gradients
57. CS 354 57
Example Composite
SVG Filter Effect
GaussianBlur of alpha
offset
source graphic
blur
specular
offset blur lighting
“in”
add composite
covered specular
specular
source covered
specular merge
final
result
58. CS 354 58
Path Rendering Trends
Most graphics people interactive with will be resolution-
independent 2D
Resolution-dependent 2D “bitmap” graphics
is way-of-the-past
Tablets, smart phones, etc. drive this
Denser screens
Apple’s Retinal display
Larger touch screens too
Means more pixels to draw
More interactivity
Static PDFs interactive HTML 5 style content
Touch interaction demands low latency
Means path rendering needs to be faster
Power matters
CPUs inefficient path rendering won’t cut it
59. CS 354 59
Soon
Mixing path rendering and 3D graphics
All accelerated by GPUs
60. CS 354 60
Example of Bump Mapping
on Path Rendered Text
Phrase “Brick wall!” is path rendered and bump
mapped with a fragment shader
light source position
61. CS 354 61
Next Class
Next lecture
Typography
The specialized problem of rendering legible text
Project 3
Begin work
Due Wednesday, April 18, 2012
(Project 4 will be a simple ray tracer and
immediately follow Project 3)