Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - JeGX

Pages: 1 2 3 [4] 5 6 ... 77
3D-Tech News Around The Web / Re: TechPowerUp GPU-Z 2.9.0 Released
« on: May 07, 2018, 10:05:34 PM »
Download zone updated: GPU-Z 2.9.0

3D-Tech News Around The Web / CPU-Z 1.85 released
« on: May 05, 2018, 08:43:32 PM »
CPU-Z 1.85 is out. This new version adds the report of the AGESA version on AMD processors. The information is shown near the BIOS version, in the mainboard page.

In addition, this version reports the clock speeds with a higher refresh rate, and also fixes the "error 577" during the program initialization on Windows XP and 7, preventing all information from being reported.

- source

A lot has been said recently about our GeForce Partner Program. The rumors, conjecture and mistruths go far beyond its intent. Rather than battling misinformation, we have decided to cancel the program.

GPP had a simple goal – ensuring that gamers know what they are buying and can make a clear choice.

NVIDIA creates cutting-edge technologies for gamers. We have dedicated our lives to it. We do our work at a crazy intense level – investing billions to invent the future and ensure that amazing NVIDIA tech keeps coming. We do this work because we know gamers love it and appreciate it. Gamers want the best GPU tech. GPP was about making sure gamers who want NVIDIA tech get NVIDIA tech.

With GPP, we asked our partners to brand their products in a way that would be crystal clear. The choice of GPU greatly defines a gaming platform. So, the GPU brand should be clearly transparent – no substitute GPUs hidden behind a pile of techno-jargon.

Most partners agreed. They own their brands and GPP didn’t change that. They decide how they want to convey their product promise to gamers. Still, today we are pulling the plug on GPP to avoid any distraction from the super exciting work we’re doing to bring amazing advances to PC gaming.


GeeXLab - english forum / Fire shader
« on: May 04, 2018, 06:51:13 PM »
Here is a simple fire shader (GLSL) demo:

GeeXLab - english forum / Re: Luajit for Linux
« on: May 04, 2018, 04:29:34 PM »
LuaJIT support has been added to Raspberry Pi and Tinker Board in GeeXLab 0.24+:

GeeXLab - english forum / GeeXLab released
« on: May 04, 2018, 04:27:13 PM »
GeeXLab has been released for all platforms.


Release notes:

Version - 2018.05.03
! improved monitoring mode, a mode where GeeXLab does not eat CPU and GPU cycles
  if not necessary. Monitoring mode is available on all platforms.
+ [WINDOWS] GeeXLab keeps its size on high DPI systems (no longer blurry effect).
+ [WINDOWS/LINUX] added gl_forward_compatible element in the XML window node.
! updated gh_imgui lib with latest version 1.61 WIP.
+ added mouse wheel support in ImGui functions (gh_imgui.frame_begin_v2()).
+ added frame_begin_v2(), set_next_window_content_size(), collapsing_header(),
  text_unformatted_v1(), text_unformatted_v2(), column_get_width(), column_set_width(),
  column_get_offset(), column_set_offset(), get_font_size(), calc_text_size(),
  begin_child(), end_child(), popup_open(), popup_begin(), popup_begin_context_item(),
  popup_end(), selectable() and button_arrow() to gh_imgui lib (lua, python).
+ added get_gpu_config() to gh_gml lib (lua, python).
+ added plotline_draw_v2() to gh_imgui lib (lua, python).
+ added vk_instance_get_num_layers(), vk_instance_get_layer_name(),
  vk_gpu_get_num_layers(), vk_gpu_get_layer_name(),
  vk_gpu_get_num_memory_heaps(), vk_gpu_get_heap_size() and vk_gpu_get_device_type()
  to gh_renderer (lua, python).
* Vulkan plugin: fixed a crash on Radeon GPUs by disabling the call to
  vkGetPhysicalDeviceProperties2() with Adrenalin 18.3.4.
* Vulkan plugin: fixed a bug in the enumeration of device extensions.
+ [RPI / TINKER BOARD] added LuaJIT support.
+ [LINUX] added glx_get_server_num_extensions(), glx_get_server_extension(),
  glx_get_client_num_extensions(), glx_get_client_extension(), glx_get_renderer_info_int(),
  glx_get_renderer_info_str() to gh_renderer (lua, python).

Full changelog:

Slides on modules, bundlers, webgl, and glslify!


Small experimental lossless photographic image compression library with a C API and command-line interface.

It's much faster than PNG and compresses better for photographic images. This compressor often takes less than 6% of the time of a PNG compressor and produces a file that is 66% of the size. It was written in just 500 lines of C code thanks to Facebook's Zstd library.

The goal was to see if I could create a better lossless compressor than PNG in just one evening (a few hours) using Zstd and some past experience writing my GCIF library. Zstd is magical.

I'm not expecting anyone else to use this, but feel free if you need some fast compression in just a few hundred lines of C code.


3D-Tech News Around The Web / Bokeh Depth of Field in a single pass
« on: May 04, 2018, 01:50:33 PM »
When I implemented bokeh depth of field I stumbled upon a neat blending trick almost by accident. In my opinion, the quality of depth of field is more related to how objects of different depths blend together, rather than the blur itself. Sure, bokeh is nicer than gaussian, but if the blending is off the whole thing falls flat. There seems to be many different approaches to this out there, most of them requiring multiple passes and sometimes separation of what's behind and in front of the focal plane. I experimented a bit and stumbled upon a nice trick, almost by accident.


Code: [Select]
uniform sampler2D uTexture; //Image to be processed
uniform sampler2D uDepth; //Linear depth, where 1.0 == far plane
uniform vec2 uPixelSize; //The size of a pixel: vec2(1.0/width, 1.0/height)
uniform float uFar; // Far plane

const float GOLDEN_ANGLE = 2.39996323;
const float MAX_BLUR_SIZE = 20.0;
const float RAD_SCALE = 0.5; // Smaller = nicer blur, larger = faster

float getBlurSize(float depth, float focusPoint, float focusScale)
 float coc = clamp((1.0 / focusPoint - 1.0 / depth)*focusScale, -1.0, 1.0);
 return abs(coc) * MAX_BLUR_SIZE;

vec3 depthOfField(vec2 texCoord, float focusPoint, float focusScale)
 float centerDepth = texture(uDepth, texCoord).r * uFar;
 float centerSize = getBlurSize(centerDepth, focusPoint, focusScale);
 vec3 color = texture(uTexture, vTexCoord).rgb;
 float tot = 1.0;

 float radius = RAD_SCALE;
 for (float ang = 0.0; radius<MAX_BLUR_SIZE; ang += GOLDEN_ANGLE)
  vec2 tc = texCoord + vec2(cos(ang), sin(ang)) * uPixelSize * radius;

  vec3 sampleColor = texture(uTexture, tc).rgb;
  float sampleDepth = texture(uDepth, tc).r * uFar;
  float sampleSize = getBlurSize(sampleDepth, focusPoint, focusScale);
  if (sampleDepth > centerDepth)
   sampleSize = clamp(sampleSize, 0.0, centerSize*2.0);

  float m = smoothstep(radius-0.5, radius+0.5, sampleSize);
  color += mix(color/tot, sampleColor, m);
  tot += 1.0;
  radius += RAD_SCALE/radius;
 return color /= tot;

In this paper we are presenting a new real-time, screen-space technique that can be easily integrated into existing rendering pipelines and that drastically improves the quality of the lighting by adding an important near-field illumination term. It exploits a reprojection of the radiance from one frame to another to provide a theoretically infinite amount of light bounces and at the same time keeps a tight frame budget since it basically relies on the same foundation as the Horizon-Based Ambient Occlusion (HBAO) technique introduced by Bavoil et al. [1] except it uses the information gathered while computing the horizon to its maximum potential.


As a computer engineer who has spent half a decade working with caches at Intel and Sun, I’ve learnt a thing or two about cache-coherency. This was one of the hardest concepts to learn back in college – but once you’ve truly understood it, it gives you a great appreciation for system design principles.

You might be wondering why you as a software developer should care about CPU cache-design. For one thing, many of the concepts learnt in cache-coherency are directly applicable to distributed-system-architecture and database-isolation-levels as well. For instance, understanding how coherency is implemented in hardware caches, can help in better understanding strong-vs-eventual consistency. It can spur ideas on how to better enforce consistency in distributed systems, using the same research and principles applied in hardware.

For another thing, misconceptions about caches often lead to false assertions, especially when it comes to concurrency and race conditions. For example, the common refrain that concurrent programming is hard because “different cores can have different/stale values in their individual caches”. Or that the reason we need volatiles in languages like Java, is to “prevent shared-data from being cached locally”, and force them to be “read/written all the way to main memory”.


3D-Tech News Around The Web / Reducing Vulkan API call overhead
« on: May 02, 2018, 09:41:02 AM »
Vulkan is designed to have significantly smaller CPU overhead compared to other APIs like OpenGL. This is achieved by various means – the API is structured to do more work up-front, such as creating the pipeline state once and binding it many times instead of having to continuously set various state bits, and many API calls do more work per call, for example vkCmdBindVertexBuffers can bind all vertex buffer objects used by the vertex shader stage in one call. However a complex application can still end up calling various Vulkan functions tens or hundreds of thousands of times per frame. This article will look at costs associated with that, and ways to bring them down.


3D-Tech News Around The Web / GIMP 2.10.0 released
« on: April 27, 2018, 05:34:28 PM »
The long-awaited GIMP 2.10.0 is finally here! This is a huge release, which contains the result of 6 long years of work (GIMP 2.8 was released almost exactly 6 years ago!) by a small but dedicated core of contributors.

Still, to get you a quick taste of GIMP 2.10, here are some of the most notable changes:

- Image processing nearly fully ported to GEGL, allowing high bit depth processing, multi-threaded and hardware accelerated pixel processing, and more.

- Color management is a core feature now, most widgets and preview areas are color-managed.

- Many improved tools, and several new and exciting tools, such as the Warp transform, the Unified transform and the Handle transform tools.
On-canvas preview for all filters ported to GEGL.
- Improved digital painting with canvas rotation and flipping, symmetry painting, MyPaint brush support…

- Support for several new image formats added (OpenEXR, RGBE, WebP, HGT), as well as improved support for many existing formats (in particular more robust PSD importing).

- Metadata viewing and editing for Exif, XMP, IPTC, and DICOM.

- Basic HiDPI support: automatic or user-selected icon size.

- New themes for GIMP (Light, Gray, Dark, and System) and new symbolic icons meant to somewhat dim the environment and shift the focus towards content (former theme and color icons are still available in Preferences).

- And more, better, more, and even more awesome!


NVIDIA Nsight Graphics is a standalone developer tool that enables you to debug, profile, and export frames built with Direct3D (11,12), Vulkan, OpenGL, OpenVR, and the Oculus SDK.

Nsight Graphics is a suite of debugging and profiling tools for graphics applications. It provides insights into your application’s operation and optimal performance, and reduces your time spent debugging. Built from the same core features and codebase as Nsight Visual Studio Edition, Nsight Graphics adds several new capabilities, all in a standalone application.

Version 1.1 includes the following enhancements:
- Implemented support for Vulkan 1.1
- Increased support for ID3D12Device2
- Increased performance when debugging or profiling D3D11 applications
- Introduced new metrics in the Range Profiler including warp stall reasons and warp stall cycles
- Improved Range Profiler metric terminology for clarity
- Range Profiler now takes DXR workloads into account (requires 397.31 or later)
- Included several bug fixes and application compatibility fixes

- Nsight Graphics homepage
- Nsight Graphics documentation
- Nsight Graphics 1.1 blog post
- Nsight Graphics 1.1 DOWNLOAD

GeeXLab - english forum / Re: Kapla blocks game prototype with PhysX
« on: April 26, 2018, 08:18:13 PM »
New screenies:

GeeXLab - english forum / Re: (WIP) GL-Z 0.4.0
« on: April 26, 2018, 08:02:22 PM »
GLZ on a system with a RyZen 7 1700 CPU + Radeon RX Vega 56

GeeXLab - english forum / Re: (WIP) GL-Z 0.4.0
« on: April 26, 2018, 06:46:16 PM »
New screenshot.  Time to port it to other platforms (linux, macos, rpi and tinker board)...
Don't look at the FPS value in the title bar, GL-Z is in monitoring mode and on Windows, the frame is updated every second. When monitoring mode is disabled, the frame is updated at 60FPS.


Windows 10 x64 driver:
Linux x64 driver:

April 25th, 2018 - Windows 397.40, Linux 396.18.05

- Windows driver feature parity with Linux 396.18.02
- Bug fixes

Intel Metrics Discovery Application Programming Interface is a user mode library that provides access to GPU performance data. The library has OS abstraction layer that allows for interoperability in different environments.

Supported processors: Intel processors with Gen9 graphics devices:
- formerly Skylake (SKL),
- formerly Kabylake (KBL),
- formerly Apollo Lake/Broxton (APL/BXT).


Pages: 1 2 3 [4] 5 6 ... 77