36 research outputs found

    Developing Generalized Cross Hatching Shader Approach for Non-Photorealistic Rendering

    Get PDF
    In this research, I present a method for rendering a geometric scene that has the look and feel of artistic hand drawings, particularly using a medium such as charcoal or crosshatching. While there have been many approaches to non-photorealistic (NPR) renderings in the past two decades, there seems to be very little research done on how to obtain such charcoal or cross-hatching effects, especially with attention to reflections and specularity, which often at times seems to break the illusion of the drawing effect. I developed a new class of techniques, using a Barycentric shading method, that allows the non-photorealistic rendering of a variety of artistic drawing styles. My approach can be summarized as follows: (1) a Barycentric shader that can provide generalized crosshatching with opaque multi-textures, (2) a Barycentric shader using transparent multitextures, and (3) a texture synthesis method that can automatically produce crosshatching textures from any given image

    Foundry: Hierarchical Material Design for Multi-Material Fabrication

    Get PDF
    We demonstrate a new approach for designing functional material definitions for multi-material fabrication using our system called Foundry. Foundry provides an interactive and visual process for hierarchically designing spatially-varying material properties (e.g., appearance, mechanical, optical). The resulting meta-materials exhibit structure at the micro and macro level and can surpass the qualities of traditional composites. The material definitions are created by composing a set of operators into an operator graph. Each operator performs a volume decomposition operation, remaps space, or constructs and assigns a material composition. The operators are implemented using a domain-specific language for multi-material fabrication; users can easily extend the library by writing their own operators. Foundry can be used to build operator graphs that describe complex, parameterized, resolution-independent, and reusable material definitions. We also describe how to stage the evaluation of the final material definition which in conjunction with progressive refinement, allows for interactive material evaluation even for complex designs. We show sophisticated and functional parts designed with our system.National Science Foundation (U.S.) (1138967)National Science Foundation (U.S.) (1409310)National Science Foundation (U.S.) (1547088)National Science Foundation (U.S.). Graduate Research Fellowship ProgramMassachusetts Institute of Technology. Undergraduate Research Opportunities Progra

    Developing Generalized Cross Hatching Shader Approach for Non-Photorealistic Rendering

    Get PDF
    In this research, I present a method for rendering a geometric scene that has the look and feel of artistic hand drawings, particularly using a medium such as charcoal or crosshatching. While there have been many approaches to non-photorealistic (NPR) renderings in the past two decades, there seems to be very little research done on how to obtain such charcoal or cross-hatching effects, especially with attention to reflections and specularity, which often at times seems to break the illusion of the drawing effect. I developed a new class of techniques, using a Barycentric shading method, that allows the non-photorealistic rendering of a variety of artistic drawing styles. My approach can be summarized as follows: (1) a Barycentric shader that can provide generalized crosshatching with opaque multi-textures, (2) a Barycentric shader using transparent multitextures, and (3) a texture synthesis method that can automatically produce crosshatching textures from any given image

    And now for something completely different: running Lisp on GPUs

    Get PDF
    The internal parallelism of compute resources increases permanently, and graphics processing units (GPUs) and other accelerators have been gaining importance in many domains. Researchers from life science, bioinformatics or artificial intelligence, for example, use GPUs to accelerate their computations. However, languages typically used in some of these disciplines often do not benefit from the technical developments because they cannot be executed natively on GPUs. Instead existing programs must be rewritten in other, less dynamic programming languages. On the other hand, the gap in programming features between accelerators and common CPUs shrinks permanently. Since accelerators are becoming more competitive with regard to general computations, they will not be mere special-purpose processors in the future. It is a valid assumption that future GPU generations can be used in a similar or even the same way as CPUs and that compilers or interpreters will be needed for a wider range of computer languages. We present CuLi, an interactive Lisp interpreter, that performs all computations on a CUDA-capable GPU. The host system is needed only for the input and the output. At the moment, Lisp programs running on CPUs outperform Lisp programs on GPUs, but we present trends indicating that this might change in the future. Our study gives an outlook on the possibility of running Lisp programs or other dynamic programming languages on next-generation accelerators

    Rendu de pierres précieuses en temps réel

    Get PDF
    National audienceLe but de ce stage a été de trouver une méthode rapide pour génèrer des images de pierres précieuses en temps réel à partir d'un modèle géométrique et de paramètres physiques. La motivatione st de pouvoir évaluer l'aspect visuel d'une pierre sous n'importe quel point de vue, de modifier les paramètres physiques et de géométrie. Le tout avec un retour visuel instantanné

    Shading with Painterly Filtered Layers: A Process to Obtain Painterly Portraits

    Get PDF
    In this thesis, I study how color data from different styles of paintings can be extracted from photography with the end result maintaining the artistic integrity of the art style and having the look and feel of skin. My inspiration for this work came from the impasto style portraitures of painters such as Rembrandt and Greg Cartmell. I analyzed and studied the important visual characteristics of both Rembrandt’s and Cartmell’s styles of painting.These include how the artist develops shadow and shading, creates the illusion of subsurface scattering, and applies color to the canvas, which will be used as references to help develop the final renders in computer graphics. I also examined how color information can be extracted from portrait photography in order to gather accurate dark, medium, and light skin shades. Based on this analysis, I have developed a process for creating portrait paintings from 3D facial models. My process consists of four stages: (1) Modeling a 3D portrait of the subject, (2) data collection by photographing the subjects, (3) Barycentric shader development using photographs, and (4) Compositing with filtered layers. My contributions has been in stages (3) and (4) as follows: Development of an impasto-style Barycentric shader by extracting color information from gathered photographic images. This shader can result in realistic looking skin rendering. Development of a compositing technique that involves filtering layers of images that correspond to different effects such as diffuse, specular and ambient. To demonstrate proof-of-concept, I have created a few animations of the impasto style portrait painting for a single subject. For these animations, I have also sculpted high polygon count 3D model of the torso and head of my subject. Using my shading and compositing techniques, I have created rigid body animations that demonstrate the power of my techniques to obtain impasto style portraiture during animation under different lighting conditions

    Simit: A Language for Physical Simulation

    Get PDF
    Using existing programming tools, writing high-performance simulation code is labor intensive and requires sacrificing readability and portability. The alternative is to prototype simulations in a high-level language like Matlab, thereby sacrificing performance. The Matlab programming model naturally describes the behavior of an entire physical system using the language of linear algebra. However, simulations also manipulate individual geometric elements, which are best represented using linked data structures like meshes. Translating between the linked data structures and linear algebra comes at significant cost, both to the programmer and the machine. High-performance implementations avoid the cost by rephrasing the computation in terms of linked or index data structures, leaving the code complicated and monolithic, often increasing its size by an order of magnitude. In this paper, we present Simit, a new language for physical simulations that lets the programmer view the system both as a linked data structure in the form of a hypergraph, and as a set of global vectors, matrices and tensors depending on what is convenient at any given time. Simit provides a novel assembly construct that makes it conceptually easy and computationally efficient to move between the two abstractions. Using the information provided by the assembly construct, the compiler generates efficient in-place computation on the graph. We demonstrate that Simit is easy to use: a Simit program is typically shorter than a Matlab program; that it is high-performance: a Simit program running sequentially on a CPU performs comparably to hand-optimized simulations; and that it is portable: Simit programs can be compiled for GPUs with no change to the program, delivering 5-25x speedups over our optimized CPU code
    corecore