Skip to content

Releases: turanszkij/WickedEngine

v0.71.143

30 Jan 22:38
67c87cb
Compare
Choose a tag to compare

Changelog since last release:

0.71.142:

  • animation retargeting updates:
    -- retargeting now callable from scripts: Scene::RetargetAnimation()
    -- runtime retargeting mode: doesn't bake new animation data, but reuses source, and computes retargeting in real time
    -- character controller sample uses separate animation file now and retargeting to character model
  • editor: entity filtering by name

0.71.143:

  • optimization for rendering of geometry that has wind enabled
  • fix for Steam - Linux build that caused crash at startup

v0.71.137

16 Jan 13:31
8af7ad8
Compare
Choose a tag to compare

Changelog since last release:

0.71.127:

  • Volumetric cloud updates by @Kliaxe :
    -- second cloud layer
    -- rain clouds
    -- more parameters exposed to editor
    -- overall quality and performance improvements
  • VXGI (Voxel GI) updates:
    -- improved quality of voxelization
    -- anisotropic voxels (directional voxels)
    -- clipmaps (voxel LOD)
    -- improved temporal accumulation, and multi bounce diffuse

0.71.137:

  • configurable directional light shadow cascades
  • character controller LUA sample updates: NPCs
  • editor: transparency setting for transformation and bone picker tools

v0.71.124

24 Dec 08:21
Compare
Choose a tag to compare

Changelog since last release:

0.71.109:

  • Added support for DirectX 12 Agility SDK (optional) (by: @amerkoleci )
  • Added FidelityFX FSR 2.1: upscale from lower resolution rendering to full display resolution wi::renderer::PostProcess_FSR2()
  • DDGI: optimization with R9G9B9_SHAREDEXP texture format - less memory usage, faster sampling
  • Inverse kinematics with humanoid rig: added constraints for leg bones (avoids twisting thighs and knees)
  • Character controller sample: dynamic foot placement with inverse kinematics
  • planar reflections:
    • transparent objects will also be rendered into planar reflection
    • temporal AA, FSR 2.1 inside planar reflection will work better
  • other fixes and improvements

0.71.112:

  • .hdr image format can be loaded now
  • .dds texture with BC6H format can be loaded now
  • spherical map texture (2D texture) can now be used as weather sky map (static environment map)

0.71.123:

  • audio state query: GetSampleInfo(), GetTotalSamplesPlayed()
  • procedural lip movement for expression based on sound
  • vulkan:
    • removed VK_NV_mesh_shader
    • added VK_EXT_mesh_shader
    • Vulkan 1.3: dynamic render pass and dynamic vertex stride are now used
  • graphics:
    • optimizations for unified memory architecture (eg: intel integrated gpu)
    • forced precompiling a lot of graphics pipeline states at startup
  • shadow map rendering optimization: improved batching
  • profiler update: graph display

v0.71.100

21 Nov 11:37
b577075
Compare
Choose a tag to compare

Changelog since last release:

0.71.72:

  • RenderPath3D: contrast, saturation, brightness adjustment (by @Cop46 )
  • Editor: animation retargeting, Mixamo humanoid rig import
  • Scene intersections on CPU: velocity reporting at hit result
  • Collider CPU optimization: multi threaded update
  • Spring - collider CPU optimization using BVH acceleration structure
  • MeshComponent: double sided shadow property
  • DX12: Device Removed Extended Data and device removed support callback (by @amerkoleci )
  • DX12, Vulkan: GPU device name reporting (by @jdswebb )
  • DX12, Vulkan: Sparse resource and async copy queue support
  • Terrain:
    • shadow map optimization by disabling low curvature chunk shadows
    • sparse texture system that allows 16k * 16k texture resolution dynamically close by, and lower VRAM usage

0.71.84:

  • [minor breaking change] graphics: removed TYPELESS formats, these formats can be used instead both for depth and shader resource binding:
    • R32G8X24_TYPELESS -> D32_FLOAT_S8X24_UINT
    • R32_TYPELESS -> D32_FLOAT
    • D24_UNORM_S8_UINT -> D24_UNORM_S8_UINT
    • R16_TYPELESS -> D16_UNORM
  • graphics: added ResourceMiscFlag::TYPED_FORMAT_CASTING and ResourceMiscFlag::TYPELESS_FORMAT_CASTING for advanced format casting support
  • terrain: surface textures are using block compression: memory reduction, better performance
  • terrain: tessellation can be enabled for surface
  • fluid simulation: performance optimization
  • hair particle system: performance optimization
  • LUA: fixed issue when sometimes instead error being reported, application would crash
  • shaders:
    • meshlet packing improvement: added 1 bit extra precision = doubled the supported meshlet count to 16 million (fixes a problem with very high polygon scenes)
    • removed SRGB texture conversion code at most places, instead SRGB conversion will be performed by descriptor automatically
  • Editor: added brightness, contrast, saturation sliders for graphics options

0.71.93:

  • terrain: texture compression improvements
  • fixed mesh LOD incorrect UVs in ray tracing effects
  • Editor:
    • play button: execute last script
    • stop button: kill background script processes
    • improved multiple scene switching
    • gui layout will be retained between application runs
  • added camera_shake.lua sample script
  • fix in font renderer - sometimes texts could disappear
  • fix in tessellation - displacement mapping was not using texture tiling parameter of material

0.71.100:

  • terrain:
    • virtual texturing system rewritten to be atlas-based, not using hardware tiled resource Tier 2 feature
    • now supports 64k * 64k virtual texture resolution per chunk
  • Editor:
    • added GLTF export feature. You can export GLTF and GLB files with the save button in the editor (by @megumumpkin )
    • GLTF importer improvements: avoid negative scaling correction on imported objects (by @megumumpkin )
    • terrain prop asset configuration file: customize terrain object placement with props.ini configuration file
    • terrain grass configuration file: customize grass properties with grass.ini configuration file

v0.71.47

19 Sep 11:25
Compare
Choose a tag to compare

Changelog since last release:

0.71.37:

  • terrain generator physics mesh generation
  • lua bindings for physics

0.71.39:

  • added ray traced diffuse effect: 1 bounce indirect diffuse light (hardware raytracing GPU only). Can use DDGI as fallback for adding multiple bounces.
  • optimization for scene intersection functions:
    • LOD level can be specified
    • they will use multiple threads to collect intersections

0.71.42:

  • repurposed RENDERTYPE enum to FILTER (old values are still usable)
  • added FILTER_NAVIGATION_MESH type - allows tagging meshes for navigation and filtering them in scene intersection functions
  • added FILTER_COLLIDER type - allows processing colliders in scene intersection functions
  • added simpler interface to get scene intersections: new Scene::Intersects() function overloads
  • improvements in character_controller_tps.lua script: script is checking colliders and navigation meshes instead of all meshes in the scene. This can result in faster performance when meshes are set up with colliders.
  • terrain sample assets specify custom colliders for trees and bushes. Terrain chunks and rocks are tagged as navigation meshes.
  • playground sample scene has now navigation mesh tagging for meshes that need collision

0.71.46:

  • VRM humanoid data import, automatic LookAt for head and eye bones.

0.71.47:

  • Lua bindings for expressions, humanoids
  • Weather: added fog color override for realistic sky
  • Editor: display save confirmation text
  • Editor: fix for Win + D shortcut crash

v0.71.34 [Steam release]

01 Sep 17:48
60ef0ae
Compare
Choose a tag to compare

Changelog since last release:

0.71.0:

  • lua scripting updates by @megumumpkin :
    • improved handling of script paths (code breaking change, might break existing asset paths in lua scripts)
      • scripts can now query their originating directory and file path with script_dir() and script_file() commands.
    • advanced process tracking by script and process identifiers, new sample script: Content/script_tracking.lua
  • gui: text input field caret positioning, selection highlighting support

0.71.3:

  • font renderer: 2x base upscaling, SDF rendering can be disabled
  • editor updates:
    • paint tool:
      • screen aligned brush visualizer update (thicker geometry, better visible)
      • sculpt mode: axis locking support
      • texture mode: brush mask shape, rotation
    • terrain generator: stackable modifiers (perlin noise, voronoi noise, heightmap image)

0.71.7:

  • default Arial font replaced by Liberation Sans (by @brakhane )
  • editor: bone picking, animation editing

0.71.10:

  • added light animation support: color, intensity, range, innerConeAngle, outerConeAngle properties can be animated

0.71.15:

  • wi::ecs::ComponentLibrary can be used to register custom components to the scene (by @megumumpkin )
  • Linux: engine can be compiled as dynamic library optionally (by @portaloffreedom )
  • Added support for spring colliders
  • DDGI will be serialized with the scene, can be used for baked GI
  • DDGI grid size parameter is no longer hard coded, can be edited
  • Added controllable light shaft strength parameter
  • Editor:
    • GLTF importing supports sparse accessors
    • GLTF importing can import spring bones and colliders
    • can import VRM model

0.71.18:

  • added support for .ini config file loading and saving
  • cartoon outline effect can be configured per material
  • added userdata to material, support for custom material parameters
  • pen pressure support for windows desktop platform
  • Editor:
    • config.ini file update with lots of parameters
    • many application settings will be saved and loaded from config.ini
    • layout improvements

0.71.28:

  • colliders will affect for particle systems
  • Lua scripting updates (by @megumumpkin )
    • option to add custom script parameters at script launch
    • many new bindings for wi::scene components
  • new animatable properties:
    • sound: play/stop event, volume
    • emitter: emit count
    • camera: fov, focal length, aperture size, aperture shape
    • script: play/stop event
    • material: color, emissive, roughness, metalness, reflectance, texmuladd
  • many updates to Editor

0.71.31:

  • Volumetric cloud updates (by @Kliaxe )
    • Improved reprojection: improved quality, less noise
    • Cloud model changes
    • Weather map import
    • Local lights
    • Environment capture
    • Volumetric cloud shadow
    • Aerial perspective for clouds
  • added support for sparse morph target: greatly reduces size of morph target data
  • expressions will be imported from VRM models
    • human preset and custom expressions supported
    • procedural blink, look, mouth animation

0.71.33:

  • mesh LOD works in ray tracing effects

0.71.34:

  • terrain separated into core logic and gui
  • terrain generation parameters are serialized
  • ddgi extents and smooth backface test parameters serialized (prevents static DDGI probe relocation)
  • raytraced shadow fixes

v0.70.18

31 Jul 19:23
a0ad653
Compare
Choose a tag to compare
v0.70.18 Pre-release
Pre-release

0.70.14:

  • Editor:
    • completely rewritten transform tool: improved functionality, usability and visuals
    • completely refactored GUI: window grouping, component listing, icons, and a lot more
    • multiple scenes support, scene switching, saving, quicksave, etc.
    • color grading reference palette display
    • many new keyboard shortcuts and features (check help in the Editor)
    • new undo/redo operation that supports any component addition/removal/data change (not implemented yet for every gui control)
    • terrain generator: grass and prop density, chunk scale and other parameters added
    • generation of cube and plane mesh without loading model
  • GUI improvements, initial theming support
  • Font renderer: 1byte char stream will be interpreted as UTF8 automatically (no need to manually decompress into wide char any more)
  • physics: triangle mesh LOD support, removed some allocations, fixes
  • Dear ImGui docking sample that showcases a custom 3D editor by @plemsoft
  • Linux Template sample by @MolassesLover
  • Updated DirectX, Vulkan headers, Volk and VMA libraries by @amerkoleci

0.70.18:

  • Editor: material picker, layout improvements, transform tool improvements, checkbox icons, tooltip theming

v0.70.0

29 Jun 18:23
c02ab32
Compare
Choose a tag to compare
v0.70.0 Pre-release
Pre-release

0.70.0:

  • shadowmap atlas, dynamic shadowmap resolution: high number of shadow casting lights are supported
  • impostor rendering updates: optimizations, fixes
  • environment probes: MSAA rendering option
  • spot lights: added inner cone angle parameter
  • GLTF importer supports punctual lights (KHR_lights_punctual extension)
  • switched to physical light units for punctual lights (might break old lighting configurations)
  • font renderer: HDR display output support
  • graphics API: subresource data GPU upload/download improvements
  • terrain generator: export heightmap image

v0.60.84

05 Jun 13:05
Compare
Choose a tag to compare
v0.60.84 Pre-release
Pre-release

0.60.62:

  • terrain generator uses virtual textures
  • removed terrain specific shaders (terrain will use normal shaders from now)

0.60.63:

  • Added experimental rendering method: visibility buffer shading in compute. You can try this by enabling "VCS" in the Editor's Renderer window and compare performance with forward rendering. (Disabled by default)

0.60.73:

  • QOI image loading integration (by @Sororfortuna )
  • Physics fixes and torque support (by @eddieataberk )
  • GUI: slider support for windows and labels
  • Editor: paint tool custom brush textures and reveal textures (only for Texture paint mode)
  • Tests: directional sound test

0.60.84:

  • font renderer: SDF font rendering, outlines, softness, boldness effects; cursor exposed to allow continue text rendering from previous draw; kerning fixes;
  • added VRAM usage query and display
  • added typewriter animation effect for sprite font
  • vulkan row pitch, slice pitch fixes

v0.60.61

28 Apr 14:45
Compare
Choose a tag to compare
v0.60.61 Pre-release
Pre-release

0.60.14:

  • hierarchy update system was rewritten to use multiple threads (instead of top-down update, now a bottom-up traversal is used)
  • vulkan: added support for dynamic uniform buffers
  • added motion blur shutter speed to remove dependency from frame rate
  • light shaft fix when camera is far from origin
  • water ripples are rendered in lower resolution
  • added restitution property for emitters
  • emitters will be distance-sorted with 16-bit float precision instead of integer precision
  • graphics API: command lists count is no longer hard coded, so infinite number of command lists can be used
  • RenderQueue refactors, improvements in wi::renderer, no longer using fixed allocator sizes
  • wi::font and wi::image SetCanvas() function no longer requires a CommandList
  • wi::image::SetBackground() function no longer requires a CommandList

0.60.19:

  • added Dynamic Diffuse Global Illumination (DDGI)

0.60.31:

  • Screen space reflection improvements by @Kliaxe : optimizations, quality improvements. Some improvements also included for ray traced reflections.
  • Added missing SetPointer implementation for Linux/SDL by @flipdp
  • Updated Vulkan Memory Allocator library by @amerkoleci
  • The Visual Studio build now uses Visual Studio 2022 by default
  • GraphicsDevice improvements:
    • new function: ClearUAV: fully clears unordered access view resources to value
    • new function: GetMinOffsetAlignment: queries the precise offset alignment needed for a GPU buffer's subresources
    • CreateSubresource: added optional parameter to request a specific format for only a single subresource
    • other improvements, fixes
  • MeshComponent: merged index, vertex and subset buffers into combined resources, reduced allocations
  • CPU performance improvements when updating the Scene
  • Entity_Serialize improvements
  • Editor: lots of fixes for undo/redo functionality

0.60.32:

  • MIP mapping implemented in raytracing effects with ray cones technique
  • improved visibility resolve pass
    • depth is now computed purely from primitive ID and camera projection, depth buffer is never converted to shader resource
    • fast path for when minimal amount of surface params are needed for the frame
    • it will compute surface params only when certain post processes request them
  • ShaderMesh and ShaderMeshSubset are now combined into ShaderGeometry to reduce GPU buffer loads
  • Mesh UV Set 0 and 1 vertex buffers are interleaved, improves performance of depth passes
  • render queue will no longer be sorted for RENDERPASS_MAIN - Opaque
  • dx12, vulkan: draw-indirect-count implementations
  • performance improvements, fixes, refactors

0.60.48:

  • improvements for materials with additive blend mode in raytracing
  • added better random generator in shaders
  • path tracing performance improvements:
    • ray termination chance based on expected ray contribution
    • anyhit traces will be disabled after set amount of bounces ( ANYTHIT_CUTOFF_AFTER_BOUNCE_COUNT value )
  • ocean updates:
    • ocean mesh uses indexed draw (performance improvement)
    • gradient tiling pattern fix
    • added underwater effect
    • transparency range (distance fade) improvement
  • raytracing shaders use sampler that is configurable by user like the in object shaders
  • added support for Linux package files (by @MolassesLover )
  • added support for system-wise install by CMake (by @portaloffreedom )
  • Linux file dialog fix (by @megumumpkin )
  • other fixes

0.60.50:

  • Added procedural terrain generator (for now this is Editor only preview version)
  • Added LOD (Level Of Detail) support
  • Added LOD Generator to Editor (Mesh Window -> LOD Gen), uses the meshoptimizer library
  • Editor can merge multiple objects now into one mesh (Mesh window -> Merge Selected)
  • Ocean: added occlusion culling support to detect when ocean is occluded
    • can skip planar reflection render for ocean
    • can skip ocean simulation
    • can skip ocean rendering
  • CPU ray tracing optimization: TMin and TMax parameter
    • can improve Ray-AABB and Ray-Triangle tests
    • improves performance of third person character controller script
  • other fixes

0.60.61:

  • added cloud shadows
  • improved wind effect
  • added stars to sky (realistic sky type)
  • added custom scaling to canvas (it is an optional scaling on top of display DPI scaling)
  • hierarchy system: transform components existing are no longer assumed
  • Linux file dialog filtering fix
  • other fixes and improvements