2#include "base/SharedPtr.h"
3#include "../base/BaseTypes.h"
12 ref class SpriteBatch;
13 ref class Manipulator;
14 ref class GameViewDrawHook;
16 ref class InternalCommandBufferHandle;
28 GameView(
const std::shared_ptr<kmyGfx::GameView>& ptr);
30 kmyGfx::GameView*
getNativePtr() {
return obj ? (*obj).get() :
nullptr; }
32 void draw(
bool swapbuffer,
float timeScale);
33 void preDraw(
float timeScale, Action<float>^ startFixedUpdate, Action<float>^ afterAnimate, Action<float>^ afterSimulate);
49 void setViewport(
int x,
int y,
int width,
int height);
66 void setDofParam(
float focalDistance,
float focalRange,
float radius);
69 void getImage(
int x,
int y,
int w,
int h, array<UINT32> ^buffer);
70 void getDepth(
int x,
int y,
int w,
int h, array<float>^ buffer);
71 void getNormal(
int x,
int y,
int w,
int h, array<UINT32>^ buffer);
76 void setFogParam(f32 start, f32 depthDensity, f32 heightFallOff);
77 void setSSAOParam(f32 radius, f32 minLimit, f32 maxLimit, f32 shadowScale,
int sampleCount, f32 contrast,
SharpKmyGfx::Color color,
SSAOALGORITHM algorithm,
SSAOBLURTYPE blurType,
int linearThresholdLevel,
float fadeDistance);
83 int pickupDetail(
float x,
float y, array<UINT16> ^idlist, array<SharpKmyMath::Vector3> ^wposlist, array<float> ^depthlist);
92 void pickupRect(
float left,
float top,
float right,
float bottom, System::Collections::Generic::List<UINT16>^ idlist,
bool ignoreTerrain,
bool ignoreManipulator);
103 void setLutMap(System::Guid
id,
float interpolateTime);
197 bool _setSpriteBatch =
false;
199 bool _setCamera =
false;
202 bool _setDLPosture =
false;
204 bool _setDLColor =
false;
206 bool _setDLShadowColor =
false;
208 bool _setDLShadowVM =
false;
209 f32 _directionalLightShadowVolumeMargin;
210 bool _setDLShadowBias =
false;
211 f32 _directionalLightShadowBias;
212 bool _setDLShadowDistane =
false;
213 f32 _directionalLightShadowDistance;
214 bool _setCascadeStep =
false;
218 bool _setCascadeCount =
false;
219 int _cascadeCount = 4;
220 bool _setEnableCascadeViusalize =
false;
221 bool _enableCascadeVisualize =
false;
222 bool _setAmbientLight =
false;
224 bool _setViewport =
false;
229 bool _setViewportSize =
false;
230 int _viewportSizeWidth;
231 int _viewportSizeHeight;
232 bool _setDisplayID =
false;
233 unsigned int _displayID;
234 bool _setBackGroundColor =
false;
236 bool _setBloom =
false;
238 bool _setBloomParam =
false;
239 float _bloomParamApply;
240 float _bloomParamHilightThreshold;
241 bool _setAutoExposure =
false;
243 bool _setAutoExposureParam =
false;
244 float _autoExposureParamTargetBrightness;
245 float _autoExposureParamMinScale;
246 float _autoExposureParamMaxScale;
247 bool _setChromaticAbberation =
false;
248 bool _chromaticAbberation;
249 bool _setChromaticAbberationParam =
false;
250 float _chromaticAbberationParmSize;
251 bool _setDof =
false;
253 bool _setDofParam =
false;
254 float _dofParamSmoothStart;
255 float _dofParamSmoothRange;
256 float _dofParamRadius;
257 bool _setFxaa =
false;
259 bool _setReflectionMap =
false;
261 bool _setSkyBoxMaterial =
false;
262 System::Guid _skyBoxMaterial;
263 bool _setLutMap =
false;
264 System::Guid _lutMap;
265 bool _setFogColor =
false;
267 bool _setFogParam =
false;
269 f32 _fogParamDepthDensity;
270 f32 _fogParamHeightFallOff;
271 bool _setSSAOParam =
false;
272 f32 _ssaoParamRadius;
273 f32 _ssaoParamMinLimit;
274 f32 _ssaoParamMaxLimit;
275 f32 _ssaoParamShadowScle;
276 int _ssaoParamSampleCount;
277 f32 _ssaoParamContrast;
281 int _ssaoLinearThresholdLevel;
282 float _ssaoFadeDistance;
283 bool _setSSSSS =
false;
285 bool _setSSSSSParam =
false;
286 f32 _SSSSSParamRadius;
287 int _SSSSSParamSampleCount;
288 f32 _SSSSSParamApply;
289 bool _setShadowMapScale =
false;
290 float _shadowMapScale;
292 bool _setEnableVignette =
false;
293 bool _enableVignette;
294 bool _setVignette =
false;
296 bool _setIBLIntensity =
false;
298 bool _setBillboardLightModulation =
false;
299 float _billboardLightModulation;
300 bool _setReflectionIntensity =
false;
301 float _reflectionIntensity;
302 bool _setUsetDeferredLighting =
false;
303 bool _usetDeferredLighting;
305 bool _setSharpen =
false;
306 bool _sharpen =
false;
307 bool _setSharpenParam =
false;
308 float _sharpenParamStrength;
309 float _sharpenParamDistance;
311 void copy(settings% o)
313 _setSpriteBatch = o._setSpriteBatch;
314 _spriteBatch = o._spriteBatch;
315 _setCamera = o._setCamera;
316 _cameraProj = o._cameraProj;
317 _cameraView = o._cameraView;
318 _setDLPosture = o._setDLPosture;
319 _directionalLightPosture = o._directionalLightPosture;
320 _setDLColor = o._setDLColor;
321 _directionalLightColor = o._directionalLightColor;
322 _setDLShadowColor = o._setDLShadowColor;
323 _directionalLightShadowColor = o._directionalLightShadowColor;
324 _setDLShadowVM = o._setDLShadowVM;
325 _directionalLightShadowVolumeMargin = o._directionalLightShadowVolumeMargin;
326 _setDLShadowBias = o._setDLShadowBias;
327 _directionalLightShadowBias = o._directionalLightShadowBias;
328 _setDLShadowDistane = o._setDLShadowDistane;
329 _directionalLightShadowDistance = o._directionalLightShadowDistance;
330 _cascadeStep1 = o._cascadeStep1;
331 _cascadeStep2 = o._cascadeStep2;
332 _cascadeStep3 = o._cascadeStep3;
333 _cascadeCount = o._cascadeCount;
334 _enableCascadeVisualize = o._enableCascadeVisualize;
335 _setAmbientLight = o._setAmbientLight;
336 _ambientLight = o._ambientLight;
337 _setViewportSize = o._setViewportSize;
338 _viewportSizeWidth = o._viewportSizeWidth;
339 _viewportSizeHeight = o._viewportSizeHeight;
340 _setDisplayID = o._setDisplayID;
341 _displayID = o._displayID;
342 _setBackGroundColor = o._setBackGroundColor;
343 _backGroundColor = o._backGroundColor;
344 _setBloom = o._setBloom;
346 _setBloomParam = o._setBloomParam;
347 _bloomParamApply = o._bloomParamApply;
348 _bloomParamHilightThreshold = o._bloomParamHilightThreshold;
349 _setAutoExposure = o._setAutoExposure;
350 _autoExposure = o._autoExposure;
351 _setAutoExposureParam = o._setAutoExposureParam;
352 _autoExposureParamTargetBrightness = o._autoExposureParamTargetBrightness;
353 _autoExposureParamMinScale = o._autoExposureParamMinScale;
354 _autoExposureParamMaxScale = o._autoExposureParamMaxScale;
355 _setChromaticAbberation = o._setChromaticAbberation;
356 _chromaticAbberation = o._chromaticAbberation;
357 _setChromaticAbberationParam = o._setChromaticAbberationParam;
358 _chromaticAbberationParmSize = o._chromaticAbberationParmSize;
361 _setDofParam = o._setDofParam;
362 _dofParamSmoothStart = o._dofParamSmoothStart;
363 _dofParamSmoothRange = o._dofParamSmoothRange;
364 _dofParamRadius = o._dofParamRadius;
365 _setFxaa = o._setFxaa;
367 _setReflectionMap = o._setReflectionMap;
368 _reflectionMap = o._reflectionMap;
369 _setSkyBoxMaterial = o._setSkyBoxMaterial;
370 _skyBoxMaterial = o._skyBoxMaterial;
371 _setLutMap = o._setLutMap;
373 _setFogColor = o._setFogColor;
374 _fogColor = o._fogColor;
375 _setFogParam = o._setFogParam;
376 _fogParamStart = o._fogParamStart;
377 _fogParamDepthDensity = o._fogParamDepthDensity;
378 _fogParamHeightFallOff = o._fogParamHeightFallOff;
379 _setSSAOParam = o._setSSAOParam;
380 _ssaoParamRadius = o._ssaoParamRadius;
381 _ssaoParamMinLimit = o._ssaoParamMinLimit;
382 _ssaoParamMaxLimit = o._ssaoParamMaxLimit;
383 _ssaoParamShadowScle = o._ssaoParamShadowScle;
384 _ssaoParamSampleCount = o._ssaoParamSampleCount;
385 _ssaoParamContrast = o._ssaoParamContrast;
386 _ssaoParamColor = o._ssaoParamColor;
387 _setSSSSS = o._setSSSSS;
389 _setSSSSSParam = o._setSSSSSParam;
390 _SSSSSParamRadius = o._SSSSSParamRadius;
391 _SSSSSParamSampleCount = o._SSSSSParamSampleCount;
392 _SSSSSParamApply = o._SSSSSParamApply;
393 _setShadowMapScale = o._setShadowMapScale;
394 _shadowMapScale = o._shadowMapScale;
396 _setEnableVignette = o._setEnableVignette;
397 _enableVignette = o._enableVignette;
398 _setVignette = o._setVignette;
399 _vignatte = o._vignatte;
400 _setIBLIntensity = o._setIBLIntensity;
401 _IBLIntensity = o._IBLIntensity;
402 _setReflectionIntensity = o._setReflectionIntensity;
403 _reflectionIntensity = o._reflectionIntensity;
404 _setUsetDeferredLighting = o._setUsetDeferredLighting;
405 _usetDeferredLighting = o._usetDeferredLighting;
410 settings contextSaved;
Definition: GameViewDrawHook.h:17
Definition: GameView.h:19
virtual bool drawEnable()
Definition: GameView.h:21
Definition: GameView.h:25
void setShadowMapScale(float s)
Definition: GameView.cpp:1158
void setSelectionDrawEnabled(bool flg)
Definition: GameView.cpp:1024
void resetQualityAdjust()
Definition: GameView.h:121
void preDraw(float timeScale, Action< float >^ startFixedUpdate, Action< float >^ afterAnimate, Action< float >^ afterSimulate)
Definition: GameView.cpp:97
void setHiddenStencilColor(float r, float g, float b, float a)
Definition: GameView.h:146
void setPhysicsDebugDrawContactPoints(bool flg)
Definition: GameView.cpp:1038
bool XZPlaneHitTest(float u, float v, float yoffset, SharpKmyMath::Vector3 %hitpos)
Definition: GameView.cpp:944
void getTerrainNormal(float x, float y, SharpKmyMath::Vector3% nrm)
Definition: GameView.cpp:510
void baseImageCapture(bool flg)
Definition: GameView.cpp:1144
static Texture getBaseDepthTexture()
Definition: GameView.cpp:1121
static void setPerformanceMeterDrawMode(int mode)
Definition: GameView.h:159
void setDistanceFadeStart(float v)
Definition: GameView.h:112
void clearHoverHilightPickupID()
Definition: GameView.cpp:599
SharpKmyMath::Matrix4 getCameraView()
Definition: GameView.h:187
static GameView getMainGameView()
Definition: GameView.cpp:68
void showDevelopHint(bool flg)
Definition: GameView.h:181
void pickupRect(float left, float top, float right, float bottom, System::Collections::Generic::List< UINT16 >^ idlist, bool ignoreTerrain, bool ignoreManipulator)
Definition: GameView.cpp:545
Texture getCaptureColorTexture()
Definition: GameView.cpp:1099
void setChromaticAbberationParam(float size)
Definition: GameView.cpp:423
static void enableLimitFPS(bool flg)
Definition: GameView.cpp:46
void setVignette(float value)
Definition: GameView.cpp:664
void addDrawHook(GameViewDrawHook ^d)
Definition: GameView.cpp:1170
void addPhysics()
Definition: GameView.h:115
static int getCurrentGameView3DScreenWidth()
Definition: GameView.cpp:1498
void setShapenParam(float strength, float distance)
Definition: GameView.cpp:472
void setDirectionalLightShadowBias(f32 bias)
Definition: GameView.cpp:203
void setDirectionalLightPosture(SharpKmyMath::Matrix4^ posture)
Definition: GameView.cpp:155
static void setMainGameView(GameView^ gv)
Definition: GameView.cpp:63
Manipulator getManipulator()
Definition: GameView.cpp:977
static void windowsMessageEvent(IntPtr hWnd, UINT message, WPARAM wparam, LPARAM lparam)
Definition: GameView.cpp:1490
array< unsigned short > getHilightPicupIDs()
Definition: GameView.cpp:568
void setModelBoundSphereDrawType(ModelBoundSphereDrawType flg)
Definition: GameView.h:123
void setAmbientLight(SharpKmyGfx::Color color)
Definition: GameView.cpp:262
void setViewport(int x, int y, int width, int height)
Definition: GameView.cpp:281
void setSSSSSParam(f32 radius, int sampleCount, f32 apply)
Definition: GameView.cpp:916
~GameView()
Definition: GameView.cpp:29
void getCaptureFrame(array< UINT32 > ^color, array< UINT32 > ^depth)
Definition: GameView.cpp:812
void setViewportSize(int width, int height)
Definition: GameView.cpp:295
void enableChromaticAbberation(bool flg)
Definition: GameView.cpp:411
void enableBloom(bool flg)
Definition: GameView.cpp:360
SharpKmyMath::Vector2 getViewportSize()
Definition: GameView.cpp:308
void setCascadeCount(int num)
Definition: GameView.cpp:240
void setLutMap(System::Guid id)
Definition: GameView.cpp:623
void addSubGameView(GameView^ sub)
Definition: GameView.cpp:1066
void ignoreSuspendChecker()
Definition: GameView.h:145
void setFogParam(f32 start, f32 depthDensity, f32 heightFallOff)
Definition: GameView.cpp:864
void setPhysicsDebugDrawConstraints(bool flg)
Definition: GameView.cpp:1045
void enableSSSSS(bool flg)
Definition: GameView.cpp:904
void removeSubGameView(GameView^ sub)
Definition: GameView.h:134
void enableFxaa(bool flg)
Definition: GameView.cpp:485
void setBillboardLightModulation(float value)
Definition: GameView.cpp:688
void usetDeferredLighting(bool flg)
Definition: GameView.cpp:931
void setDirectionalLightShadowVolumeMargin(f32 margin)
Definition: GameView.cpp:191
void addPickupFrame(int size)
Definition: GameView.cpp:339
void setDirectionalLightShadowDistance(f32 distance)
Definition: GameView.cpp:215
void enableAsSubGameView(bool flg)
Definition: GameView.cpp:1079
void setCascadeStep(float s1, float s2, float s3)
Definition: GameView.cpp:227
static void setSpriteBatchToTaskGameView(SpriteBatch^ s)
Definition: GameView.cpp:983
void enableCascadeVisualize(bool flg)
Definition: GameView.cpp:251
int pickupDetail(float x, float y, array< UINT16 > ^idlist, array< SharpKmyMath::Vector3 > ^wposlist, array< float > ^depthlist)
Definition: GameView.cpp:521
void addDrawCommand(DrawEvent ev, InternalCommandBufferHandle^ icb)
Definition: GameView.cpp:1463
float getBlockElapsed(SharpKmyBase::PerformancePeriodType type)
Definition: GameView.cpp:1473
static void waitPreviousDrawingFinished()
Definition: GameView.cpp:122
void setPhysicsProcessEnabled(bool flag)
Definition: GameView.cpp:1052
void addManipulator()
Definition: GameView.h:117
static void setDrawSuspendChecker(GameViewDrawSuspendChecker^ body)
Definition: GameView.cpp:1447
void setDirectionalLightColor(SharpKmyGfx::Color color)
Definition: GameView.cpp:167
bool isDebugPause()
Definition: GameView.cpp:135
void enableVignette(bool flg)
Definition: GameView.cpp:652
static void setMaximumFPS(int fps)
Definition: GameView.cpp:52
SharpKmyPhysics::PhysicsBase getPhysics()
Definition: GameView.cpp:965
static void enableDraw(bool flg)
Definition: GameView.cpp:40
void save()
Definition: GameView.cpp:1213
void enableSharpen(bool flg)
Definition: GameView.cpp:461
Texture getCaptureDepthTexture()
Definition: GameView.cpp:1110
void restore()
Definition: GameView.cpp:1224
static void bootProgressMessage(System::String^ text)
Definition: GameView.cpp:1009
GameView()
Definition: GameView.cpp:10
static GameViewDrawSuspendChecker s_checker
Definition: GameView.h:162
static bool isDrawSuspending()
Definition: GameView.cpp:1455
unsigned short pickup(float x, float y, SharpKmyMath::Vector3% wpos)
Definition: GameView.cpp:496
void addHilightPickupID(unsigned short id)
Definition: GameView.cpp:561
u32 getDisplayID()
Definition: GameView.h:52
void enableDynamicResolution(bool flg)
Definition: GameView.cpp:1151
void set3DGizmoDrawEnabled(bool flg)
Definition: GameView.cpp:1017
void setDofParam(float focalDistance, float focalRange, float radius)
Definition: GameView.cpp:447
bool owning
Definition: GameView.h:174
void setCamera(SharpKmyMath::Matrix4^ proj, SharpKmyMath::Matrix4^ view)
Definition: GameView.cpp:142
static void setMaximumResolution(int w, int h)
Definition: GameView.cpp:992
void addHoverHilightPickupID(unsigned short id)
Definition: GameView.cpp:592
void clearSettings()
Definition: GameView.h:80
void enableDof(bool flg)
Definition: GameView.cpp:435
void setReflectionMap(Texture^ tex)
Definition: GameView.cpp:606
void setIBLIntensity(float value)
Definition: GameView.cpp:676
bool viewVolumeCheck(float x, float y, float z, float radius)
Definition: GameView.cpp:1059
void setDisplayID(unsigned int id)
Definition: GameView.cpp:315
void setReflectionIntensity(float value)
Definition: GameView.cpp:700
void postDraw(bool swapbuffer)
Definition: GameView.cpp:114
void removeDrawHook(GameViewDrawHook^ d)
Definition: GameView.cpp:1186
void enableAutoExposure(bool flg)
Definition: GameView.cpp:385
void setSpriteBatch(SpriteBatch^ s)
Definition: GameView.cpp:834
static GameView getTaskGameView()
Definition: GameView.cpp:999
void removeSubGameView(GameView^ sub, bool removeForce)
Definition: GameView.cpp:1086
void use2DGizmo()
Definition: GameView.h:104
void debugPause(bool flg)
Definition: GameView.cpp:128
void getNormal(int x, int y, int w, int h, array< UINT32 >^ buffer)
Definition: GameView.cpp:727
void setBackGroundColor(SharpKmyGfx::Color color)
Definition: GameView.cpp:327
void setBloomParam(float apply, float hilightThreshold)
Definition: GameView.cpp:372
void setFogColor(SharpKmyGfx::Color color)
Definition: GameView.cpp:852
void copyBaseRenderingEnviroment(GameView^ src)
Definition: GameView.cpp:1135
void draw(bool swapbuffer, float timeScale)
Definition: GameView.cpp:74
static Texture getPickupIDTexture()
Definition: GameView.cpp:1128
bool m_ignoreSuspendChecker
Definition: GameView.h:173
void getImage(int x, int y, int w, int h, array< UINT32 > ^buffer)
Definition: GameView.cpp:712
void setDistanceFadeEnable(bool flg)
Definition: GameView.h:111
void setSSAOParam(f32 radius, f32 minLimit, f32 maxLimit, f32 shadowScale, int sampleCount, f32 contrast, SharpKmyGfx::Color color, SSAOALGORITHM algorithm, SSAOBLURTYPE blurType, int linearThresholdLevel, float fadeDistance)
Definition: GameView.cpp:878
void setPhysicsDebugDrawEnabled(int flag)
Definition: GameView.cpp:1031
void clearHilightPickupID()
Definition: GameView.cpp:585
void setAutoExposureParam(float targetBrightness, float minScale, float maxScale)
Definition: GameView.cpp:397
SharpKmyMath::Matrix4 getCameraProj()
Definition: GameView.h:183
static void setMaximumPhysicsUpdateCount(int count)
Definition: GameView.cpp:58
static void useAsyncCommandExec()
Definition: GameView.h:155
static void globalEnablePostFX(bool flg)
Definition: GameView.cpp:1204
void setDirectionalLightShadowColor(SharpKmyGfx::Color color)
Definition: GameView.cpp:179
int getFixedUpdateStepCount()
Definition: GameView.cpp:1481
void enableIconDrawer(bool enable)
Definition: GameView.h:179
void setBuildingLightBrightness(float value)
Definition: GameView.cpp:274
kmyGfx::GameView * getNativePtr()
Definition: GameView.h:30
void showMiniMeter(bool flg)
Definition: GameView.h:180
static int getCurrentGameView3DScreenHeight()
Definition: GameView.cpp:1506
void getDepth(int x, int y, int w, int h, array< float >^ buffer)
Definition: GameView.cpp:742
void clearDrawHook()
Definition: GameView.cpp:1196
void removeCaptureFrame()
Definition: GameView.cpp:353
void addCaptureFrame(int width, int height)
Definition: GameView.cpp:346
void setSkyBoxMaterial(System::Guid mtl)
Definition: GameView.cpp:611
void createScreenShot(System::String^ path)
Definition: GameView.cpp:803
Definition: GameView.h:414
static void addParticleResourceForLoadTest(System::String^ path)
Definition: GameView.cpp:1438
Definition: InternalCommandBuffer.h:12
Definition: Manipulator.h:8
Definition: SpriteBatch.h:9
static Matrix4 identity()
Definition: Matrix4.h:101
PerformancePeriodType
Definition: BaseTypes.h:6
SSAOBLURTYPE
Definition: GfxTypes.h:220
DrawEvent
Definition: GfxTypes.h:52
SSAOALGORITHM
Definition: GfxTypes.h:213
ModelBoundSphereDrawType
Definition: GfxTypes.h:60
SubGameViewDrawTrigger
Definition: GfxTypes.h:237
Definition: Billboard.h:6