NV_path_rendering is an OpenGL extension for CUDA-capable NVIDIA GPUs for performing resolution-independent 2D rendering. Standards such as Scalable Vector Graphics (SVG), PostScript, PDF, Adobe Flash, and TrueType fonts rely on path rendering. With NV_path_rendering, this important class of rendering is accelerated by the GPU in a way that co-exists with conventional 3D rendering.
For more information see:
http://developer.nvidia.com/nv-path-rendering
Presented at SIGGRAPH 2004 in Los Angeles on Tuesday, August 10th during the "Real-Time Shadowing Techniques" course. Jan Kautz and Marc Stamminger organized the course. The presentation covers robust shadow volume rendering techniques for GPUs.
Practical and Robust Stenciled Shadow Volumes for Hardware-Accelerated RenderingMark Kilgard
Twenty-five years ago, Crow published the shadow volume approach for determining shadowed regions in a scene. A decade ago, Heidmann described a hardware-accelerated stencil bufferbased shadow volume algorithm. However, hardware-accelerated stenciled shadow volume techniques have not been widely adopted by 3D games and applications due in large part to the lack of robustness of described techniques. This situation persists despite widely available hardware support. Specifically what has been lacking is a technique that robustly handles various "hard" situations created by near or far plane clipping of shadow volumes. We describe a robust, artifact-free technique for hardwareaccelerated rendering of stenciled shadow volumes. Assuming existing hardware, we resolve the issues otherwise caused by shadow volume near and far plane clipping through a combination of (1) placing the conventional far clip plane “at infinity”, (2) rasterization with infinite shadow volume polygons via homogeneous coordinates, and (3) adopting a zfail stencil-testing scheme. Depth clamping, a new rasterization feature provided by NVIDIA's GeForce3 & GeForce4 Ti GPUs, preserves existing depth precision by not requiring the far plane to be placed at infinity. We also propose two-sided stencil testing to improve the efficiency of rendering stenciled shadow volumes.
March 12, 2002.
This was submitted to the SIGGRAPH 2002 papers committee but was rejected.
NV_path_rendering is an OpenGL extension for CUDA-capable NVIDIA GPUs for performing resolution-independent 2D rendering. Standards such as Scalable Vector Graphics (SVG), PostScript, PDF, Adobe Flash, and TrueType fonts rely on path rendering. With NV_path_rendering, this important class of rendering is accelerated by the GPU in a way that co-exists with conventional 3D rendering.
For more information see:
http://developer.nvidia.com/nv-path-rendering
Presented at SIGGRAPH 2004 in Los Angeles on Tuesday, August 10th during the "Real-Time Shadowing Techniques" course. Jan Kautz and Marc Stamminger organized the course. The presentation covers robust shadow volume rendering techniques for GPUs.
Practical and Robust Stenciled Shadow Volumes for Hardware-Accelerated RenderingMark Kilgard
Twenty-five years ago, Crow published the shadow volume approach for determining shadowed regions in a scene. A decade ago, Heidmann described a hardware-accelerated stencil bufferbased shadow volume algorithm. However, hardware-accelerated stenciled shadow volume techniques have not been widely adopted by 3D games and applications due in large part to the lack of robustness of described techniques. This situation persists despite widely available hardware support. Specifically what has been lacking is a technique that robustly handles various "hard" situations created by near or far plane clipping of shadow volumes. We describe a robust, artifact-free technique for hardwareaccelerated rendering of stenciled shadow volumes. Assuming existing hardware, we resolve the issues otherwise caused by shadow volume near and far plane clipping through a combination of (1) placing the conventional far clip plane “at infinity”, (2) rasterization with infinite shadow volume polygons via homogeneous coordinates, and (3) adopting a zfail stencil-testing scheme. Depth clamping, a new rasterization feature provided by NVIDIA's GeForce3 & GeForce4 Ti GPUs, preserves existing depth precision by not requiring the far plane to be placed at infinity. We also propose two-sided stencil testing to improve the efficiency of rendering stenciled shadow volumes.
March 12, 2002.
This was submitted to the SIGGRAPH 2002 papers committee but was rejected.
Computer Graphics and its applications, Elements of a Graphics, Graphics Systems: Video Display Devices, Raster Scan Systems, Random Scan Systems, Input devices.
: Introduction of Rendering, Raytracing, Antialiasing, Fractals
An illumination model, also called a lighting model and sometimes referred to as a shading model, is used to calculate the intensity of light that we should see at a given point on the surface of an object.
Surface rendering means a procedure for applying a lighting model to obtain pixel intensities for all the projected surface positions in a scene.
A surface-rendering algorithm uses the intensity calculations from an illumination model to determine the light intensity for all projected pixel positions for the various surfaces in a scene.
Surface rendering can be performed by applying the illumination model to every visible surface point.
In Computer Graphics, Hidden surface determination also known as Visible Surface determination or hidden surface removal is the process used to determine which surfaces
of a particular object are not visible from a particular angle or particular viewpoint. In this scribe we will describe the object-space method and image space method. We
will also discuss Algorithm based on Z-buffer method, A-buffer method, and Scan-Line Method.
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.
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 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
Improving Shadows and Reflections via the Stencil BufferMark Kilgard
This 1999 tutorial explains how to use the stencil buffer to achieve realistic shadows and reflections. This tutorial was included in the "Advanced OpenGL Development" course presented at the 1999 Computer Game Developer Conference (now GDC).
This tutorial predates subsequent work by Cass Everitt and me to develop a truly robust Z-fail stencil shadow volume algorithm.
"Source Code Abstracts Classification Using CNN", Vadim Markovtsev, Lead Soft...Dataconomy Media
"Source Code Abstracts Classification Using CNN", Vadim Markovtsev, Lead Software Engineer - Machine Learning Team at Source {d}
Watch more from Data Natives Berlin 2016 here: http://bit.ly/2fE1sEo
Visit the conference website to learn more: www.datanatives.io
Follow Data Natives:
https://www.facebook.com/DataNatives
https://twitter.com/DataNativesConf
Stay Connected to Data Natives by Email: Subscribe to our newsletter to get the news first about Data Natives 2016: http://bit.ly/1WMJAqS
About the Author:
Currently Vadim is a Senior Machine Learning Engineer at source{d} where he works on deep neural networks that aim to understand all of the world's developers through their code. Vadim is one of the creators of the distributed deep learning platform Veles (https://velesnet.ml) while working at Samsung. Afterwards Vadim was responsible for the machine learning efforts to fight email spam at Mail.Ru. In the past Vadim was also a visiting associate professor at Moscow Institute of Physics and Technology, teaching about new technologies and conducting ACM-like internal coding competitions. Vadim is also a big fan of GitHub (vmarkovtsev) and HackerRank (markhor), as well as likes to write technical articles on a number of web sites.
A very high-level introduction to scaling out wth Hadoop and NoSQL combined with some experiences on my current project. I gave this presentation at the JFall 2009 conference in the Netherlands
Apache TinkerPop is an open source graph computing framework which uses Gremlin, a domain-specific language for graphs mutation and traversal. IBM Graph offers an Apache TinkerPop3 compatible API as a service. This service can be used for building recommendation engines, analyzing social networks, fraud detection and more. During this session, we will cover: - What’s a Graph and why use it. - Challenges faced and lessons learned while building and operating a service based on TinkerPop3 stack
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.
Neurotech Solutions Ltd: Рекомендации по Stage3D: выбор наиболее подходящего ...DevGAMM Conference
Вам заказали разработку инновационной 3d game на Flash? Требования более, чем высокие, а сроки поджимают? Нет времени отладить собственный 3D движок, и встала проблема выбора наиболее подходящего из уже существующих, предлагающим самый широкий инструментарий? Как узнать, какой из стандартных 3D движков лучше всего подходит для данного проекта?
В своем докладе Михаил даст ответ на эти и многие другие вопросы. Он остановится на движках Away3D и Flare3D с Alternaiva3D в качестве почетного гостя конкурса. Будут рассмотрены важнейшие достоинства и недостатки обсуждаемых движков, чтобы сориентировать разработчиков в выборе подходящих инструментов и обеспечить успех выпускаемым 3D продуктам.
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.]
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
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 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
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.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
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
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.
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
1. CS 354
Ray Casting & Tracing
Mark Kilgard
University of Texas
April 17, 2012
2. CS 354 2
Today’s material
In-class quiz
On typography lecture
Lecture topic
Finish digital typography
Project 3
Ray tracing & casting
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
Digital typography
This lecture
Ray casting and tracing
Projects
Project 3 due Wednesday, April 18, 2012
Tomorrow!
Project 4 on ray tracing on Piazza
5. CS 354 5
On a sheet of paper
Daily Quiz • Write your EID, name, and date
• Write #1, #2, #3, #4 followed by its answer
Multiple choice: Pica and Em
are:
Multiple choice: Unicode
supports how many character
points?
a) Names of two commonly
used type faces a) 256
b) Units of typographic b) 65,536
measurement
c) Over ¼ million
c) Two dominant types of
Bezier curves d) 4,294,967,296
d) Graphics researchers Multiple choice: Kerning
responsible for font hinting adjusts what property of text?
a) Spacing between characters
True or False: This text is
written in a serif type face. b) Whether accent marks are
included on glyphs
c) Control of vertical layout
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
Rendering Outline Glyphs
Conventional method
CPU-based scan-line
rasterization
Augmented by hinting
Adaptively Sampled Distance Fields (ADFs)
MERL’s Saffron type system
Glyphs are static so
pre-computation
is effective
Bitmaps often cached
8. CS 354 8
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]
9. CS 354 9
OpenGL Bitmap Fonts
GLUT includes implementation
glutBitmapCharacter
Calls glBitmap with pre-compiled bitmap data
Also window system specific routines to get bitmaps
from system fonts
wglUseFontBitmaps for Windows
glXUseXFont for X Window System (Linux)
10. CS 354 10
OpenGL Stroke Fonts
Draw glyph’s stroke as line segments
Can transform arbitrarily
Use glEnable(GL_LINE_SMOOTH) for anti-aliasing
glutStrokeCharacter does this
11. CS 354 11
Other Text Approaches
Pack glyphs in texture atlas
Then draw textured rectangles with the
correct texture coordinates for each glyph
12. CS 354 12
First-class Text Support in
Various Rendering Systems
Rendering system Vendor / Sponsor First-class text?
Cairo Open source Yes
Direct2D / Direct3D Microsoft Yes
Flash Adobe Yes
GDI Microsoft Yes
Java 2D Sun Yes
OpenGL Khronos No
OpenVG Khronos Yes
Office Open XML Microsoft / ECMA Yes
PDF Adobe Yes
PHIGS ISO Yes
PostScript Adobe Yes
Qt Nokia Yes
Quart 2D Apple Yes
Scalable Vector Graphics (SVG) World Wide Web Consortium Yes
Silverlight Microsoft Yes
Xlib X Consortium Yes
13. CS 354 13
How did OpenGL’s lack of text
support last for so long?
OpenGL was designed in 1992
Pre-Unicode world
Fonts were bitmaps of ASCII back then
Now TrueType and OpenType dominate
The primitive initial state of OpenGL’s font support has become
mistaken for a philosophical dictate
Text-based applications uniformly ignore OpenGL
Not a good thing
3D applications have their expectations adjusted to
expect lousy text
Not a good thing
Example: Quake 2 console text is miniscule because textured
bitmap characters assumed text sized for 800x600 display
14. CS 354 14
The World Has Changed
Since 1992
Unicode universally accepted now
Systems ship with near-complete, resolution-independent Unicode
fonts now
Good fonts come with your operating system license
International character of web makes UTF-8 text common today
Windows adoption of UTF-16 makes that common within Windows
Web has expanded font repertoire of systems
Content providers and users expect wide range of available fonts
Fonts have standard names embedded in web content
These font names span operating systems
Screen resolution has increased
1992: 640x480 aliased
2009: 1920x1200+ multisampled
Needing all text to be in small point sizes to fit screen isn’t a mandate
anymore
3D support and acceleration is pervasive now
Text makes sense mixed with 3D content today
15. CS 354 15
Direct Path Rendering of
Text in OpenGL
Recent work
NV_path_rendering provides GPU-acceleration of
paths, including glyphs
Glyph support is first-class
16. CS 354 16
Digital Typography Trends
Hinting & ClearType likely going away
Mainly due to denser screens
Expectation of antialiased font appearance
Text not always presented axis-aligned or
black-on-white
More font variety in web content
Improving standards
More available fonts
Even font variety for East Asian writing
systems
17. CS 354 17
OpenGL’s Realism Limitations
OpenGL is based on a pipeline model in which
primitives are rendered one at time
No automatic shadows (except by tricks or multiple
renderings)
No automatic multiple reflections
Multi-pass algorithms for shadows and reflections
Physically plausible & global approaches
Rendering equation
Ray tracing
Radiosity
17
18. CS 354 18
Ray Casting
Arthur Appel (1968)
Cast rays from eye… what object is hit?
19. CS 354 19
Ray Tracing
“An Improved Illumination
Model for Shaded
Display”
Turner Whitted (1980)
Communications of the
ACM
Performance
512x512 pixels
74 Minutes on VAX (1979)
6 seconds on PC (2006)
60+ frames/second on
GPU (2012)
20. CS 354 20
Ray Tracing
Follow rays of light from a point source
Can account for reflection and
transmission
20
22. CS 354 22
Computational Limits of
Ray Tracing
Should be able to handle all physical
interactions
Ray tracing paradigm is physically
plausible
But most rays do not affect what we see
Scattering produces many (infinite)
additional rays
Alternative: ray casting
22
23. CS 354 23
Ray Casting
Only rays that reach the eye matter
Reverse direction and cast rays
Need at least one ray per pixel
23
24. CS 354 24
Ray Casting Quadrics
Ray casting has become a standard way
to visualize quadrics which are implicit
surfaces in CSG systems
Constructive Solid Geometry
Primitives are solids
Build objects with set operations
Union, intersection, set difference
24
25. CS 354 25
Ray Casting a Sphere
Ray is parametric
Sphere is quadric
Resulting equation is a scalar quadratic
equation which gives entry and exit points
of ray (or no solution if ray misses)
25
26. CS 354 26
Shadow Rays
Even if a point is visible, it will not be lit
unless we can see a light source from that
point
Cast shadow or feeler rays
26
27. CS 354 27
Reflection
Must follow shadow rays off reflecting or
transmitting surfaces
Process is recursive
27
31. CS 354 31
Diffuse Surfaces
Theoretically the scattering at each point
of intersection generates an infinite
number of new rays that should be traced
In practice, we only trace the transmitted
and reflected rays but use the Phong
model to compute shade at point of
intersection
Radiosity works best for perfectly diffuse
(Lambertian) surfaces
31
32. CS 354 32
Building a Ray Tracer
Best expressed recursively
Can remove recursion later
Image based approach
For each ray …….
Find intersection with closest surface
Need whole object database available
Complexity of calculation limits object types
Compute lighting at surface
Trace reflected and transmitted rays
32
33. CS 354 33
More bounces
When to stop
Some light will be
absorbed at each
intersection
Track amount left
Ignore rays that go off
to infinity
Put large sphere
around problem
Count steps
Fewer bounces 33
34. CS 354 34
Recursive Ray Tracer
color c = trace(point p, vector d, int
step)
{
color local, reflected, transmitted;
point q;
normal n;
if(step > max) return(background_color);
34
35. CS 354 35
Recursive Ray Tracer
q = intersect(p, d, status);
if(status==light_source)
return(light_source_color);
if(status==no_intersection)
return(background_color);
n = normal(q);
r = reflect(q, n);
t = transmit(q,n);
35
36. CS 354 36
Recursive Ray Tracer
local = phong(q, n, r);
reflected = trace(q, r, step+1);
transmitted = trace(q,t, step+1);
return(local+reflected+transmitted);
36
38. CS 354 38
Implicit Surfaces
Ray from p0 in direction d
p(t) = p0 +t d
General implicit surface
f(p) = 0
Solve scalar equation
f(p(t)) = 0
General case requires numerical methods
38
39. CS 354 39
Quadrics
General quadric can be written as
pTAp + bTp +c = 0
Substitute equation of ray
p(t) = p0 +t d
to get quadratic equation
39
41. CS 354 41
Planes
p•n+c=0
p(t) = p0 +t d
t = -(p0 • n + c)/ d • n
41
42. CS 354 42
Implicit Surface
Ray Tracing Example
Paul Heckbert 1983
43. CS 354 43
Polyhedra
Generally we want to intersect
with closed objects such as
polygons and polyhedra
rather than planes
Hence we have to worry
about inside/outside testing
For convex objects such as
polyhedra there are some fast
tests
43
44. CS 354 44
Ray Tracing Polyhedra
If ray enters an object, it must enter a front
facing polygon and leave a back facing polygon
Polyhedron is formed by intersection of planes
Ray enters at furthest intersection with front
facing planes
Ray leaves at closest intersection with back
facing planes
If entry is further away than exit, ray must miss
the polyhedron
44
48. CS 354 48
Algorithmic Complexity of
Ray Tracing
Time complexity
Rasterization: O(b • m)
coherent!
Naïve ray tracing: O(b • p)
Accelerated ray tracing: O(log b • p)
incoherent
Key
b = # of objects in the scene
p = # of pixels in the scene
m = average # of pixels per object
49. CS 354 49
Real-time Ray Tracing
GPUs doing ray tracing
General purpose compute on GPUs
[Optix, NVIDIA, SIGGRAPH 2009]
50. CS 354 50
Ray Tracing Quality
Aliasing is a problem in ray tracing
Spatial and temporal
Spatial anti-aliasing
Average over several samples per pixel
1 sample 5x5 grid 5x5 jittered grid
51. CS 354 51
Distribution Ray Tracing
Spatial anti-aliasing
1 sample per pixel multiple samples per pixel
52. CS 354 52
Distribution Ray Tracing
Soft shadows
Distribute shadow rays over light source region
All shadow rays No shadow rays Some shadow rays
hit light source, hit light source, hit light source,
fully illuminated fully shadowed partially shadowed
53. CS 354 53
Soft Shadows Example
Multiple ray tracing effects
Including soft shadows
54. CS 354 54
Distribution Ray Tracing
Motion blur
Distribute rays over time
Pool Balls
Tom Porter
RenderMan
55. CS 354 55
Distribution Ray Tracing
Depth of field
Distribute rays across a discrete camera aperture
No depth-of-field More rays
Jittered
depth-of-field
More images for depth-of-field Even more rays
56. CS 354 56
Next Class
Next lecture
Global illumination
How is the complex interaction of light within a scene
realistically modeled?
Reading: Chapter 11, 559-568
Project 3
Due tomorrow—Wednesday, April 18, 2012
Next up: Project 4 is a simple ray tracer
Due May 2, 2012