Added new volume rendering code

Change-Id: Iab0698fdc85265ca17d2b94d8826c2f81b2f40d1
Fixed texture state being dirty

Change-Id: I0ffd34627d22440732745e22b0f8934c67c91d0e
Use correct local bounds

Change-Id: I6275048fb3d4a47ac949305c600c84b88066ea80
Fixed rotation bug

Fixed bug where rotating the volume will offset volume
rendered image from its true location

Change-Id: I89100976f684f9961acad0b0a24ffb8d00123777
Fixed style

Change-Id: I2b6bbb58e23f42925ffcdfc5e69522eb2772225a
Fixed geometry beign missing after volume render

Change-Id: I62256e5d4b797be59812d50c56fce27718a95e30
Fixed indent

Change-Id: I7007687025b7475aa6b534e9d6877e9799a63dd7
Silenced cast warnings

Change-Id: I6200c639df27b3a8570049387701ed2d99b08bc6
Fixed style and naming conventions

Change-Id: Ibff64f1d0bfce646e9c35cf8530db960db2604ba
Added copyright

Change-Id: I9089bcc85f0dfc724d0077d08933f5b2741f274b
Embedded volume shaders into C++ units

Change-Id: I7a6003d4445172fe21f75fd88b321e6b63f98fc3
Fixed broken volume rendering because of uninitialized variable

Since output frag color was un-initialized, it resulted in bad
final pixel value

Change-Id: I712d286ce5e90037a30d162f5802d85211a95433
Fixed code document style a bit

Change-Id: Ic0504c4224d45fff681df1488f2d754f1887b515
Added method to validate volume rendering

Change-Id: I5afa283c5633df71d03e6340ba8af11ef0bde75b
Enable sample distance control

Sample distance will enable users to set sample distance between
0 - inf

Change-Id: Ic8a09c1fdf0a64a7bde6e6fd15c1d8d95a9ce435
Enabled additive and composite blend mode

Change-Id: I10774e5b1d05d1238fbd5df46ca3795ae1d90a79
Use depth buffer to terminate ray

Change-Id: I46cba58c721d2f1b5a788e7240eca97b23f0eb1b
Fixed incorrect mix geometry and volume rendering

Change-Id: Ib9025e976b7058a9290d0b968d693675978b7570
Added string replacement code

The code is originally borrowed from new geometry rendering code

Change-Id: I0eb9eaa1fa39e42ebf8be51afaf37847cf114f86
First pass on compositing shader for the rendering

Change-Id: I52b81db6c9a18b5f7fa36b68a48aa4a1776f2e44