Deprecated: Creation of dynamic property wpdb::$categories is deprecated in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/wp-db.php on line 668
Deprecated: Creation of dynamic property wpdb::$post2cat is deprecated in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/wp-db.php on line 668
Deprecated: Creation of dynamic property wpdb::$link2cat is deprecated in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/wp-db.php on line 668
Deprecated: Return type of WP_Theme::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-theme.php on line 554
Deprecated: Return type of WP_Theme::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-theme.php on line 595
Deprecated: Return type of WP_Theme::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-theme.php on line 535
Deprecated: Return type of WP_Theme::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-theme.php on line 544
Deprecated: Using ${var} in strings is deprecated, use {$var} instead in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/comment-template.php on line 1745
Deprecated: Return type of WP_REST_Request::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/rest-api/class-wp-rest-request.php on line 960
Deprecated: Return type of WP_REST_Request::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/rest-api/class-wp-rest-request.php on line 980
Deprecated: Return type of WP_REST_Request::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/rest-api/class-wp-rest-request.php on line 992
Deprecated: Return type of WP_REST_Request::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/rest-api/class-wp-rest-request.php on line 1003
Deprecated: Return type of WP_Block_List::current() should either be compatible with Iterator::current(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-block-list.php on line 151
Deprecated: Return type of WP_Block_List::next() should either be compatible with Iterator::next(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-block-list.php on line 175
Deprecated: Return type of WP_Block_List::key() should either be compatible with Iterator::key(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-block-list.php on line 164
Deprecated: Return type of WP_Block_List::valid() should either be compatible with Iterator::valid(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-block-list.php on line 186
Deprecated: Return type of WP_Block_List::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-block-list.php on line 138
Deprecated: Return type of WP_Block_List::offsetExists($index) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-block-list.php on line 75
Deprecated: Return type of WP_Block_List::offsetGet($index) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-block-list.php on line 89
Deprecated: Return type of WP_Block_List::offsetSet($index, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-block-list.php on line 110
Deprecated: Return type of WP_Block_List::offsetUnset($index) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-block-list.php on line 127
Deprecated: Return type of WP_Block_List::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-block-list.php on line 199
Deprecated: Creation of dynamic property Yoast\WP\SEO\Main::$helpers is deprecated in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-content/plugins/wordpress-seo/lib/abstract-main.php on line 65
Deprecated: Creation of dynamic property WP_Block_Type::$skip_inner_blocks is deprecated in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-block-type.php on line 347
Deprecated: Constant FILTER_SANITIZE_STRING is deprecated in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-content/plugins/wordpress-seo/src/conditionals/third-party/elementor-edit-conditional.php on line 22
Deprecated: Constant FILTER_SANITIZE_STRING is deprecated in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-content/plugins/wordpress-seo/src/conditionals/third-party/elementor-edit-conditional.php on line 28
Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp.php on line 173
Deprecated: ltrim(): Passing null to parameter #1 ($string) of type string is deprecated in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/wp-db.php on line 3030
Deprecated: Creation of dynamic property WP_Term::$object_id is deprecated in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-term.php on line 198
Deprecated: Creation of dynamic property WP_Term::$object_id is deprecated in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-term.php on line 198
Deprecated: Creation of dynamic property WP_Term::$object_id is deprecated in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-term.php on line 198
Deprecated: Creation of dynamic property WP_Term::$object_id is deprecated in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-term.php on line 198
Deprecated: Creation of dynamic property WP_Term::$object_id is deprecated in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-term.php on line 198
Deprecated: Creation of dynamic property WP_Term::$object_id is deprecated in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/class-wp-term.php on line 198
Warning: Cannot modify header information - headers already sent by (output started at /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/wp-db.php:668) in /mnt/web021/d1/46/51330146/htdocs/WordPress_01/wp-includes/feed-rss2.php on line 8
The post KinskiGL now using Physically Based Rendering (PBR) appeared first on crocdialer.
]]>after digesting the siggraph 2013 course notes from Epic I started implementing a new material and lighting system within kinskiGL.
helpful resources along the way were also the “Physics and Math of Shading” presentation by Naty Hoffman and “Realtime Rendering” by Tomas Akenine-Moeller.
finally some screenshots to round up the post.
all models are lit by the .hdr maps in the background alone, though the lighting model plays nicely with classic point/spot/directional lights.
most models are from Khronos’ collection of glTF-2.0 testmodels: github.com/KhronosGroup/glTF-Sample-Models
the background HDR maps used can be found here: http://www.hdrlabs.com/sibl/archive.html
the application used is a 3Dviewer, which is a sample application of my KinskiGL framework: github.com/crocdialer/KinskiGL
it’s 2018, looks like we made some progress recently.
hope you like it,
croc
The post KinskiGL now using Physically Based Rendering (PBR) appeared first on crocdialer.
]]>