Git Product home page Git Product logo

volrender's Introduction

VolRender

Introduction

A demo of performing voxelization on polygonal models then rendering the outcome of the voxelization using volumetric rendering technique implemented using C++, Win32, DirectX9 and HLSL.
The project was implemented to emulate the expected output of the CSpace(TM) Static Volumetric Display and debug any issues (for more info refer to my thesis).
The code that controls the display and submits the commands is not included in this repository.

Screenshots

Polygon Rendering Volumetric Rendering

Building the project

To build this project you need to have Microsoft DirectX SDK (June 2010) installed on your system. The DXSDK_DIR environment variable is typically added by the installer, however, make sure you re-open visual studio after SDK setup is finished.
You can build the project without having to install "Microsoft DirectX SDK (June 2010)". However, as of now you may only be able to run release builds.

Running the project

Everytime you run the executable, you would need to set the "Transfer Function". You do this by clicking on the "Config Transfer Function" button. Once you do so, the interface will show you a widget that allows you to add, delete points or move them around. You add new points with a left click, you remove a point with right click. To move a point you hover the cursor over an existing point then press and hold the left mouse button and then move the point. Release the left mouse button when you are done.
Config Transfer Function
To hide the Transfer Function Widget you need to "Config Transfer Function" button again.

After you configure the transfer function, you may click on the "Voxelize" button or press 'V' key to perform the voxelization of the displayed polygon model. The software will perform the voxelization and switch to volumtric rendering mode. To switch back to polygonal rendering mode you need to click the "Toggle Render Mode" or press the 'M' key shortcut.

volrender's People

Contributors

samahu avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

elvargthemself

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.