5efe28fdf9
* large renderer state refactor; added subsurface scattering energy conservation; added emitted particle subsurface scattering; removed area lights; optimizations; * added layerMask support in shaders * fixed incorrect shadow priority for directional light; fix point light shadow disconnect; * fix incorrect shadow assignment
24 lines
629 B
C++
24 lines
629 B
C++
#pragma once
|
|
#include "CommonInclude.h"
|
|
|
|
#include <memory>
|
|
#include <functional>
|
|
|
|
static const int SYSTEM_EVENT_RELOAD_SHADERS = -1;
|
|
static const int SYSTEM_EVENT_CHANGE_RESOLUTION = -2;
|
|
static const int SYSTEM_EVENT_CHANGE_DPI = -4;
|
|
static const int SYSTEM_EVENT_THREAD_SAFE_POINT = -5;
|
|
|
|
namespace wiEvent
|
|
{
|
|
struct Handle
|
|
{
|
|
std::shared_ptr<void> internal_state;
|
|
inline bool IsValid() const { return internal_state.get() != nullptr; }
|
|
};
|
|
|
|
Handle Subscribe(int id, std::function<void(uint64_t)> callback);
|
|
void Subscribe_Once(int id, std::function<void(uint64_t)> callback);
|
|
void FireEvent(int id, uint64_t userdata);
|
|
}
|