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 ... 18 19 [20] 21 22 ... 63
More than two days to get the Hello World of graphics programming!

To get this RGB triangle, I had to code most of the important functionalities of the plugin: PSOs (pipeline state object),  SPIR-V shaders (as well as the tool to convert GLSL to SPIR-V), vertex and uniform buffers... and waste a lot of time with bugs!

It's cool to see this triangle, the starting point of all virtual worlds...

GeeXLab - english forum / Re: Shadertoy multipass demos
« on: February 25, 2016, 08:24:18 AM »

Are you still working on it?

Yes, in fact it's done, but to be honest I forgot a bit this framework since the release of Vulkan  ;)
I will release it with the next update of GeeXLab.

3D-Tech News Around The Web / Download Zone - Latest Updates (2016.02.23)
« on: February 23, 2016, 01:47:17 PM »
Download Zone:

New update:
- GPU-Z 0.8.7

A barrier is a new concept exposed to developers which was previously hidden inside the driver. If you think synchronization, you’re not too far off, as this is also part of what a barrier is.The synchronization part is well known for CPUs: you have multiple writer threads updating a buffer, then you synchronize to make sure all writes have finished, and then you can process the data with multiple reader threads. However, that’s not all there is to a GPU barrier (ResourceBarrier and vkCmdPipelineBarrier).


Related to barriers are fences (CreateFence and vkCreateFence), which are required to synchronize the CPU with the GPU as well as different queues on GPUs. A fence is a very heavyweight synchronization primitive as it requires the GPU to flush all caches at least, and potentially some additional synchronization. Due to those costs, fences should be used sparingly. In particular, try to group per-frame resources and track them together with a single fence instead of fine-grained per-resource tracking. For instance, all commands buffers used in one frame should be protected by one fence, instead of one fence per command buffer.



added to Vulkan resources list:

3D-Tech News Around The Web / Download Zone - Latest Updates (2016.02.22)
« on: February 22, 2016, 06:36:46 PM »
Download Zone:

New update:
- Notepad++ 6.9

GeeXLab - english forum / (WIP) Vulkan plugin for GeeXLab
« on: February 22, 2016, 09:36:33 AM »
I started the coding of this #Vulkan plugin...

After two days of struggle, I can now clear the framebuffer (what a joke!)  :P
We can create a renderer + render window on a particular GPU, and the scene resize is also managed.

Next step: pipeline object + SPIR-V programs.

2016/2/22@09:22:45(0000000001) < > GeeXLab v0.9.6.1 (Feb 22 2016@09:14:00)
2016/2/22@09:22:45(0000000002) < > Cross Platform Lab for Real Time 3D Programming and Demo Coding
2016/2/22@09:22:45(0000000003) < > (C)2009-2016 Geeks3D (
2016/2/22@09:22:45(0000000004) < > GeeXLab is starting up...
2016/2/22@09:22:45(0000000005) < > Windows version: Windows 10 build 10586
2016/2/22@09:22:45(0000000006) < > platform: Windows 64-bit

2016/2/22@09:22:49(0000000082) < > [Vulkan] Vulkan renderer (Windows, Linux)
2016/2/22@09:22:49(0000000083) < > [Vulkan] Vulkan core library loaded ok.
2016/2/22@09:22:49(0000000084) < > [Vulkan] # Vulkan devices: 2
2016/2/22@09:22:49(0000000085) < > [Vulkan] [ GPU 1 ]--------------------------------------
2016/2/22@09:22:49(0000000086) < > [Vulkan] - GPU name: GTX 750
2016/2/22@09:22:49(0000000087) < > [Vulkan] - DeviceID: 10DE-1381
2016/2/22@09:22:49(0000000088) < > [Vulkan] - Raw driver version: 1493811200
2016/2/22@09:22:49(0000000089) < > [Vulkan] - Vulkan API version: 1.0.3
2016/2/22@09:22:49(0000000090) < > [Vulkan] - Device type: VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU
2016/2/22@09:22:49(0000000091) < > [Vulkan] [ GPU 2 ]--------------------------------------
2016/2/22@09:22:49(0000000092) < > [Vulkan] - GPU name: GTX 960
2016/2/22@09:22:49(0000000093) < > [Vulkan] - DeviceID: 10DE-1401
2016/2/22@09:22:49(0000000094) < > [Vulkan] - Raw driver version: 1493811200
2016/2/22@09:22:49(0000000095) < > [Vulkan] - Vulkan API version: 1.0.3
2016/2/22@09:22:49(0000000096) < > [Vulkan] - Device type: VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU

Unlike DX12, there's no shocking leap in performance this time.

But first some caveats: The Talos Principle is technically the first game with Vulkan support, but it's currently being beta-tested. The Talos Principle also isn't designed to use the CPU utilisation and draw call improvements that are central to Vulkan, unlike Stardock's Ashes of the Singularity demo does with DX12. Furthermore, the new Vulkan drivers from AMD and Nvidia are also both in beta testing. In short, take these benchmark results with a large pinch of salt.


Essentially, in GPU bound scenarios like higher than 1080p gaming, Vulkan isn't all that different to OpenGL. But as soon as the CPU is taxed a little more, like at 1080p and lower resolutions, there's a clear uplift in performance.


News added to Vulkan resource list:

3D-Tech News Around The Web / Download Zone - Latest Updates (2016.02.18)
« on: February 18, 2016, 03:09:37 PM »
Download Zone:

New update:
- Cmder 1.2.9

GeeXLab - english forum / Raspberry Pi OpenGL 2.1 support tested
« on: February 15, 2016, 09:16:32 PM »
The new support of OpenGL 2.1 added to Raspbian Jessie has been tested with the latest GeeXLab

GeeXLab - english forum / GeeXLab released
« on: February 15, 2016, 09:14:01 PM »
GeeXLab has been released for all platforms, including Raspberry Pi with OpenGL 2.1 support. The complete story is available here:

3D-Tech News Around The Web / Re: Download Zone - Latest Updates
« on: February 15, 2016, 09:10:54 PM »
Thanks guys, I will test and add them to the download zone if they are relevant.

I like the list a lot :) It looks almost like the list of my favorites, except just:

- FastStone Image Viewer - IMHO best image browser. Freeware (not for commercial use). XnView is also a good alternative.

- foobar2000 - music player. Previously I used Aimp, which looks more like lightweight version of Winamp.

- jEdit - my favorite plain text editor. Very powerful. Its only drawback: it's written in Java :)

- WinDirStat - shows statistics and draws treemap of disk usage.

Looks like you posted in the wrong thread  ;D
Maybe you could repost here: Download Zone - Latest Updates
and delete this post.

Hello and welcome to our series of blog posts covering performance advice for Direct3D® 12 & Vulkan™. You may have seen the #DX12PerfTweets on Twitter, and asked yourself where you can find some more background information – search no more, we’ve got you covered. Today, we’ll be looking at command lists, a feature which is only present in explicit APIs that expose fairly directly the DMA command buffer architecture of most modern 3D hardware.


The most important fact about command lists is that they can be recorded from multiple threads. This is one of the major advantages of Direct3D 12 and Vulkan over previous APIs. Optimal performance will be achieved by using as many CPU threads as there are available to record command lists. There are no hidden driver threads in Direct3D 12 and Vulkan that could interfere with you – all the threading performance comes directly from the application.



EASTL stands for Electronic Arts Standard Template Library. It is a C++ template library of containers, algorithms, and iterators useful for runtime and tool development across multiple platforms. It is a fairly extensive and robust implementation of such a library and has an emphasis on high performance above all other considerations.


Ion is a portable suite of libraries and tools for building client applications,
especially graphical ones. It is small, fast, and robust, and is cross-platform
across many platforms and devices, including desktops, mobile devices, browsers,
and other embedded platforms.

Why Use Ion?
* Small: < 500k binary size on mobile platforms, often much smaller
* Powerful: Tools for faster productivity when developing applications
  * Robust, portable application infrastructure aids in:
  * Object lifetime management
  * Memory allocation
  * Application start-up and static instances
  * Threading
  * Run-time setting editing
  * Automatic performance instrumentation
  * More!
* Tools for graphics:
  * Analyze graphics scenes to find performance bottleneck
  * Trace all OpenGL calls and examine their arguments
  * Use scene resources in multiple contexts, automatically
  * Run-time graphics state introspection
  * Run-time shader editing: change your shaders and immediately see the results
* Fast graphics: Minimal overhead between your application and OpenGL / ES
* Tested: Well-tested and facilitates testing your application
  * ~100% test coverage
  * Black- and white-box tested, unit tests and integration tests
  * Mock implementation of OpenGL API allows direct renderer unit tests and
  * Integrated Remote: extensible API allows changing arbitrary application
    settings on-the-fly for faster development, testing, and debugging
* Cross-platform:
  * Desktop: Linux, Mac OSX, Windows (OpenGL)
  * Handheld: Android (ARM, x86 MIPS), iOS (ARM and x86), and their 64-bit
  * Browser: Emscripten/asm.js, NaCl / pNaCl
* Cross-functional
  * Used by many teams across Google, running on billions of devices through
    multiple Google products


3D-Tech News Around The Web / Videogames released since 1971
« on: February 09, 2016, 09:11:05 AM »
Mobygames stats released on January 15 2016:


GeeXLab - english forum / Re: Shadertoy multipass demos
« on: February 08, 2016, 10:18:11 PM »
The multipass framework seems to work fine now:

- Elephant demo:

- Radial blur:

- 2D cloth:

I'll try to post it tomorrow with more samples...  :P

Pages: 1 ... 18 19 [20] 21 22 ... 63