Topics - JeGX

Compressonator is a set of tools to allow artists and developers to more easily work with compressed assets and easily visualize the quality impact of various compression technologies. It consists of a GUI application, a command line application and an SDK for easy integration into a developer toolchain.

Quote

We are excited to announce the release of Compressonator V2.7! This version contains several new features and optimizations, including:

Cross Platform Support

Due to popular demand, Linux builds of the Compressonator SDK libs and command line application are now available in the release package. You could also build for MacOS on your own.

glTF 3D Model View and Compression

The Compressonator GUI application now supports loading of glTF v2.0 3D models and rendering through DirectX12 API. The 2D texture assets within the glTF model can be compressed and analyzed by Compressonator.

The desktop gain is attributed to gaming and cryptocurrency. That helped AMD and Nvidia gain market share.

This is the latest report from Jon Peddie Research on the GPUs used in PCs. It is reporting on the results of Q3'17 GPU shipments world-wide.

Quick highlights:

- AMD’s overall unit shipments increased 7.63% quarter-to-quarter, Intel’s total shipments increased 5.01% from last quarter, and Nvidia’s increased 29.53%.- The attach rate of GPUs (includes integrated and discrete GPUs) to PCs for the quarter was 144% which was down -1.28% from last quarter.- Discrete GPUs were in 39.55% of PCs, which is up 4.18%.- The overall PC market increase 10.31% quarter-to-quarter, and decrease -2.06% year-to-year.- Desktop graphics add-in boards (AIBs) that use discrete GPUs increased 29.05% from last quarter.- Q3'17 saw an increase in tablet shipments from last quarter.

Floating point numbers have limited precision. If you are a game programmer, you have likely encountered bugs where things start breaking after too much time has elapsed, or after something has moved too far from the origin.

This post aims to show you how to answer the questions:

- What precision do I have at a number?- When will I hit precision issues?

Dependencies is a rewrite of the old legacy software Dependencies Walker in C# for Windows devs to troubleshoot dll load dependencies issues.

Quote

Dependencies is a rewrite of the legacy software Dependency Walker which was shipped along Windows SDKs, but whose developement stopped around 2006. Dependencies can help Windows developers troubleshooting their dll load dependencies issues.

cr.h is a single file header-only live reload solution for C, written in C++:

- simple public API, 3 functions only to use (and only one to export);- works and tested on Linux and Windows;- automatic crash protection;- automatic static state transfer;- based on dynamic reloadable binary (.so/.dll);- MIT licensed;- requires C++17 (filesystem support);

When Microsoft announced its refreshed Surface Book 2 last week, it was quite clear about how it wanted to position the product. “This is a desktop,” Panos Panay, Microsoft’s corporate VP of devices, declared. “For many, this is likely the most performant desktop they have ever seen.” Apparently Panay was working with a different definition of “performant” than the rest of us, however, because the Surface Book 2’s true stand-out feature this time around isn’t the hinge, upgraded GPU, or its generally high performance: It’s that Microsoft’s latest and greatest literally can’t game on AC power without draining the battery.

...

The drain on the battery isn’t enormous, but after a 105-minute testing loop of Furmark and Prime95, battery charge had dropped 15 percent. (For the record, Furmark probably wasn’t the best app to use for testing, because Nvidia and AMD both detect it and cut GPU clocks and power automatically to avoid being damaged by what both companies view as a thermal virus.) Other reviews have reported issues with other tests, so it’s not limited to just this combination.

The Intel Management Engine is a co-processor integrated in all post-2006 Intel-CPU-based PCs. This co-processor runs a customized version of MINIX at ring -3. That means the Intel Management Engine has full access to network, memory and to the whole computer!

Smartphones are ubiquitous, but smartphone habits are as diverse as the people using them. I like to buy a flagship device, such as an iPhone X or Pixel 2, and use it for four or five years. Others buy into upgrade plans with their carrier that lets them change out their phone every year. But lots of people still buy a phone, keep it for a year or two, and then buy a new one; their old phone ends up in a closet, shoebox, or nightstand.

Many people save these old phones in case of emergency, but the vast majority of them never get used again, and eventually become worthless. The phone-in-the-closet phenomenon has become a hidden store of e-waste; a two-year-old phone still has value and is still a powerful device. And so it's great news that Samsung is starting a new "Upcycling" initiative that is designed to turn old smartphones and turn them into something brand new.

Behold, for example, this bitcoin mining rig, made out of 40 old Galaxy S5 devices, which runs on a new operating system Samsung has developed for its upcycling initiative.

I was looking around the Unreal source the other day and inspired by some excellent breakdowns of how popular games render a frame, I thought to try something similar with it as well, to study how it renders a frame (with the default settings/scene setup).

Since we have access to the source code, it is possible to study the renderer source to see what it does, although it is quite a beast and rendering paths depend a lot on the context so a clean, low-level API call list will be easier to follow (looking into the code to fill in any missing gaps).

I put together a simple scene with a few static and dynamic props, a few lights, volumetric fog, transparent objects and a particle effect to cover a large enough range of materials and rendering methods.

Julia is a high-level programming language for mathematical computing that is as easy to use as Python, but as fast as C. The language has been created with performance in mind, and combines careful language design with a sophisticated LLVM-based compiler [Bezanson et al. 2017].

Julia is already well regarded for programming multicore CPUs and large parallel computing systems, but recent developments make the language suited for GPU computing as well. The performance possibilities of GPUs can be democratized by providing more high-level tools that are easy to use by a large community of applied mathematicians and machine learning programmers. In this blog post, I will focus on native GPU programming with a Julia package that enhances the Julia compiler with native PTX code generation capabilities: CUDAnative.jl.

UniBeast has been updated to version 8.0 for macOS High Sierra. This tool creates a bootable USB drive from your Mac App Store purchased copy of macOS. The resulting USB drive allows for a clean install, upgrade or use as a rescue boot drive.

Learning modern JavaScript is tough if you haven’t been there since the beginning. The ecosystem is growing and changing so rapidly that it’s hard to understand the problems that different tools are trying to solve.

The goal of this article is to provide a historical context of how JavaScript tools have evolved to what they are today in 2017. We’ll start from the beginning and build an example website like the dinosaurs did — no tools, just plain HTML and JavaScript. Then we’ll introduce different tools incrementally to see the problems that they solve one at a time. With this historical context, you’ll be better able to learn and adapt to the ever-changing JavaScript landscape going forward. Let’s get started!

Uncapped FramerateWe at MachineGames are huge PC players, and all of id Software’s games have very strong PC DNA. So it’s important for us to make sure the PC version of the game is as solid as any console version. That’s why we built the game on idTech 6, which also allows for uncapped framerate – one of the features we’re most excited about.

VulkanWhen we started development of Wolfenstein II, the choice of graphics API for PC was a simple one. DOOM had already set the stage for what could be done with Vulkan and we wanted to take it to the next level.

Using Vulkan when developing has allowed us to utilize the power of AMD's VEGA graphics chips in ways that were not possible before, giving us fine grained control over the performance and feature set of the GPU without having to sacrifice artistic intent. Combined with the flexibility of AMD's hardware, Vulkan gives us the artistic freedom to deliver Wolfenstein without compromise.

Maybe you’ve heard the term “flow field” and maybe you’ve seen some neat pictures or animations with the term attached. In this article, I’ll cover what a flow field is, show how to create one, and give a few examples of experimenting with them. Flow fields are also known as vector fields. https://en.wikipedia.org/wiki/Vector_field

I’ll be using HTML5, JavaScript and Canvas for this article, but the concepts will apply to Processing, p5js, WebGL, or just about any other graphics programming platform. That being the case, I’m going to try to focus less on the canvas specific stuff and more on the core concepts.