921 research outputs found

    Discontinuity Edge Overdraw

    Get PDF
    Aliasing is an important problem when rendering triangle meshes. Efficient antialiasing techniques such as mipmapping greatly improve the filtering of textures defined over a mesh. A major component of the remaining aliasing occurs along discontinuity edges such as silhouettes, creases, and material boundaries. Framebuffer supersampling is a simple remedy, but 2x2 supersampling leaves behind significant temporal artifacts, while greater supersampling demands even more fill-rate and memory. We present an alternative that focuses effort on discontinuity edges by overdrawing such edges as antialiased lines. Although the idea is simple, several subtleties arise. Visible silhouette edges must be detected efficiently. Discontinuity edges need consistent orientations. They must be blended as they approach the silhouette to avoid popping. Unfortunately, edge blending results in blurriness. Our technique balances these two competing objectives of temporal smoothness and spatial sharpness. Finally, the best results are obtained when discontinuity edges are sorted by depth. Our approach proves surprisingly effective at reducing temporal artifacts commonly referred to as "crawling jaggies," with little added cost.Engineering and Applied Science

    Bridging the Gap between Machine and Language using First-Class Building Blocks

    Get PDF
    High-performance virtual machines (VMs) are increasingly reused for programming languages for which they were not initially designed. Unfortunately, VMs are usually tailored to specific languages, offer only a very limited interface to running applications, and are closed to extensions. As a consequence, extensions required to support new languages often entail the construction of custom VMs, thus impacting reuse, compatibility and performance. Short of building a custom VM, the language designer has to choose between the expressiveness and the performance of the language. In this dissertation we argue that the best way to open the VM is to eliminate it. We present Pinocchio, a natively compiled Smalltalk, in which we identify and reify three basic building blocks for object-oriented languages. First we define a protocol for message passing similar to calling conventions, independent of the actual message lookup mechanism. The lookup is provided by a self-supporting runtime library written in Smalltalk and compiled to native code. Since it unifies the meta- and base-level we obtain a metaobject protocol (MOP). Then we decouple the language-level manipulation of state from the machine-level implementation by extending the structural reflective model of the language with object layouts, layout scopes and slots. Finally we reify behavior using AST nodes and first-class interpreters separate from the low-level language implementation. We describe the implementations of all three first-class building blocks. For each of the blocks we provide a series of examples illustrating how they enable typical extensions to the runtime, and we provide benchmarks validating the practicality of the approaches

    Bridging the Gap between Machine and Language using First-Class Building Blocks

    Get PDF
    High-performance virtual machines (VMs) are increasingly reused for programming languages for which they were not initially designed. Unfortunately, VMs are usually tailored to specific languages, offer only a very limited interface to running applications, and are closed to extensions. As a consequence, extensions required to support new languages often entail the construction of custom VMs, thus impacting reuse, compatibility and performance. Short of building a custom VM, the language designer has to choose between the expressiveness and the performance of the language. In this dissertation we argue that the best way to open the VM is to eliminate it. We present Pinocchio, a natively compiled Smalltalk, in which we identify and reify three basic building blocks for object-oriented languages. First we define a protocol for message passing similar to calling conventions, independent of the actual message lookup mechanism. The lookup is provided by a self-supporting runtime library written in Smalltalk and compiled to native code. Since it unifies the meta- and base-level we obtain a metaobject protocol (MOP). Then we decouple the language-level manipulation of state from the machine-level implementation by extending the structural reflective model of the language with object layouts, layout scopes and slots. Finally we reify behavior using AST nodes and first-class interpreters separate from the low-level language implementation. We describe the implementations of all three first-class building blocks. For each of the blocks we provide a series of examples illustrating how they enable typical extensions to the runtime, and we provide benchmarks validating the practicality of the approaches

    Real-time transition texture synthesis for terrains.

    Get PDF
    Depicting the transitions where differing material textures meet on a terrain surface presents a particularly unique set of challenges in the field of real-time rendering. Natural landscapes are inherently irregular and composed of complex interactions between many different material types of effectively endless detail and variation. Although consumer grade graphics hardware is becoming ever increasingly powerful with each successive generation, terrain texturing remains a trade-off between realism and the computational resources available. Technological constraints aside, there is still the challenge of generating the texture resources to represent terrain surfaces which can often span many hundreds or even thousands of square kilometres. To produce such textures by hand is often impractical when operating on a restricted budget of time and funding. This thesis presents two novel algorithms for generating texture transitions in realtime using automated processes. The first algorithm, Feature-Based Probability Blending (FBPB), automates the task of generating transitions between material textures containing salient features. As such features protrude through the terrain surface FBPB ensures that the topography of these features is maintained at transitions in a realistic manner. The transitions themselves are generated using a probabilistic process that also dynamically adds wear and tear to introduce high frequency detail and irregularity at the transition contour. The second algorithm, Dynamic Patch Transitions (DPT), extends FBPB by applying the probabilistic transition approach to material textures that contain no salient features. By breaking up texture space into a series of layered patches that are either rendered or discarded on a probabilistic basis, the contour of the transition is greatly increased in resolution and irregularity. When used in conjunction with high frequency detail techniques, such as alpha masking, DPT is capable of producing endless, detailed, irregular transitions without the need for artistic input

    Realism in Computer Graphics: A Survey

    Full text link

    The Core Skills of VFX Repository

    Get PDF

    Doctor of Philosophy

    Get PDF
    dissertationThis dissertation explores three key facets of software algorithms for custom hardware ray tracing: primitive intersection, shading, and acceleration structure construction. For the first, primitive intersection, we show how nearly all of the existing direct three-dimensional (3D) ray-triangle intersection tests are mathematically equivalent. Based on this, a genetic algorithm can automatically tune a ray-triangle intersection test for maximum speed on a particular architecture. We also analyze the components of the intersection test to determine how much floating point precision is required and design a numerically robust intersection algorithm. Next, for shading, we deconstruct Perlin noise into its basic parts and show how these can be modified to produce a gradient noise algorithm that improves the visual appearance. This improved algorithm serves as the basis for a hardware noise unit. Lastly, we show how an existing bounding volume hierarchy can be postprocessed using tree rotations to further reduce the expected cost to traverse a ray through it. This postprocessing also serves as the basis for an efficient update algorithm for animated geometry. Together, these contributions should improve the efficiency of both software- and hardware-based ray tracers

    Airborne

    Get PDF
    Airborne diseases are spread when droplets containing pathogens, viruses and/or bacteria, are expelled into the air due to coughing, sneezing or talking. These droplets, or aerosols, can remain suspended in the air for quite some time in contained environments. Diseases are also transmitted by close physical contact and by rubbing eyes, mouth and nose after touching a contaminated surface. Radically increased mobility among humans, our treatment of animals and climate changes have increased the frequency of epidemics and the probability that a novel or mutated virus can spread rapidly. With the help of WHO and a high level of international collaboration and transparency, more alarms of pandemic alerts will be heard. The research of this topic begun with news articles about current viral events and the bigger picture; pandemics. This was accompanied by a deeper dive into the world of viruses and airborne diseases by the help of scientific articles. Interviews with experts in the field; a Surgeon, Infectious Disease Specialist, Infection Control Practitioner and a Health Care Hygiene Specialist lead to an understanding of why today’s respiratory masks are not efficient enough and why we are not relying on physical barriers today. The specialists could provide with more scientific articles on the topic of constraints and threats with respirators and also when and where the risks of transmission occurs. Microorganisms can penetrate through respirator filters, sealing surfaces or other parts of the respirator. Wearing disposable and reusable respirators causes difficulties in breathing and communicating. The chosen strategy was to avoid a health threat rather than curing a symptom. The intended target group is individuals whom due to their profession are exposed to many others while being in a confined space. These people could be a danger to others should they become infectious themselves. The conceptual respirator was developed firstly by sketching and by making rough prototypes for testing. The final concept can be reused for weeks with disposable filters and a full face piece respirator and it prevents the three ways of transmission. The respirator consists of a lightweight plastic visor which is combined with adhesive and stretchy silicone. The soft and gentle adhesive edges makes the respirator more effective and safe than disposable ones by completely sealing the edges to the face. Adhesive silicone is reattachable and reusable. This also prohibits casual and easy donning and doffing, which is linked to a higher risk of user error and contracting diseases. This new user scenario instead is in need of a mirror and sink and the donning and doffing therefor encourages a ritual of adequate hygiene of both hands and respirator. The impact of air travel on the spread of infectious diseases has given rise to considerable concern however limited research. During the early phases of a pandemic, strategies that rely on physical barriers will be more prominent and respiratory protection has been largely overlooked. A generally neglected possible portal of entry for viruses is the conjunctiva. Modern research on nanofibrous filtering material is welcomed news, as well as the aim to provide adequate information to the public in time
    • …
    corecore