profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/john-chapman/events. GitMemory does not store any data, but only uses NGINX to cache data for a period of time. The idea behind GitMemory is simply to give users a better reading experience.

john-chapman/im3d 679

Immediate mode rendering and 3d gizmos.

john-chapman/GfxSamples 21

Graphics samples for john-chapman.github.io

john-chapman/GfxSampleFramework 19

OpenGL-based app framework for graphics samples/prototyping.

john-chapman/ApplicationTools 1

Common application tools.

WildSheepStudio/ApplicationTools 1

Misc application tools/utilities.

WildSheepStudio/GfxSampleFramework 1

OpenGL-based app framework for graphics samples/prototyping.

john-chapman/linalg 0

linalg.h is a single header public domain linear algebra library for C++11

push eventjohn-chapman/GfxSamples

John Chapman

commit sha 182139f933efd9072d30242539d160ee3944e565

ParallelReduction: Support odd texture sizes, combined shaders.

view details

push time in 2 days

push eventjohn-chapman/GfxSamples

John Chapman

commit sha d3305dee4c4addcee876d72dfcceb66be62e66ba

Parallel reduction WIP.

view details

John Chapman

commit sha b352cb2ea68e67fc1d051bb3cad6093c180d5463

build: Added VS projects to ignore list.

view details

push time in 6 days

push eventjohn-chapman/GfxSamples

John Chapman

commit sha 26213cf4fdf4570f36e289d613e151ea5145617c

Improved build scripts.

view details

John Chapman

commit sha 477ffc975dee36caacd69c796611e2d460f7437e

Removed VS project files.

view details

John Chapman

commit sha f8b4cc225181172feba84758624c7342e5c15930

ParallelReduction WIP.

view details

push time in 9 days

push eventjohn-chapman/GfxSamples

John Chapman

commit sha fb95f5f8d860e6095edaf33a419565157d384262

Update GfxSampleFramework.

view details

push time in 10 days

push eventjohn-chapman/GfxSampleFramework

John Chapman

commit sha 8b95575d8f29649778f4d699ecbf6d535ee8a20a

Im3d: Account for projection type in depth test.

view details

push time in 19 days

push eventjohn-chapman/GfxSampleFramework

John Chapman

commit sha 5a3dc904ec0b70216121d4ee5b180764a5dc7aa5

Buffer, TransientBuffer: Implemented TransientBuffer, removed glMemoryBarrier(GL_BUFFER_UPDATE_BARRIER_BIT).

view details

John Chapman

commit sha dfd4bbf6763b8a36d9fc802579b6eed393b2f78d

GlContext: Transient buffer binding.

view details

John Chapman

commit sha 07a164960459aa7b57bc202eed1b478579db04fc

types: CountZeroBitsLo() + intrinsics.

view details

John Chapman

commit sha e75268dbf963d6e398a09d719b2a6bbe01003209

Buffer: Note about potential stalls on setData()

view details

John Chapman

commit sha 00ca34d594b8c38c3ddceea50aa5d42930970fac

BasicRenderer: Draw callback API WIP, transient buffers, culling/dynamic draw batching.

view details

push time in 19 days

issue commentjohn-chapman/im3d

Ids don't get reset if some control is still active and no subsequent Im3d::Gizmo call

Hi, thanks for reporting this. It's an interesting edge case; let me summarize to make sure we agree on what's happening:

  • A gizmo control is highlighted (it sets m_appHotId and m_hotDepth on the context).
  • Subsequently this gizmo is no longer drawn, but m_appHotId/m_hotDepth are not reset and so Im3d still thinks this gizmo is highlighted.
  • Some gizmos no longer work because they can't transition to a 'hot' state (they can't override the existing hot state if they aren't in front of m_hotDepth).

I think this could be fixed internally by invalidating the hot/active state if the ID wasn't used by a gizmo within a frame. However I think your client code fix (calling Context::resetId() on selection change events) is still good practice, I'll add a note somewhere in the docs about that.

If you're not already doing it I'd also suggest locking entity selection when interacting with a gizmo. It should be enough to just check Im3d::GetHotId() == Im3d::Id_Invalid when changing entity selection. It would improve Ux and also neatly solve this problem.

nihonium-cfx

comment created time in 20 days

push eventjohn-chapman/GfxSampleFramework

John Chapman

commit sha 729ef3a9b8431780e31f1c66acc9e5798b1b0d59

Mesh: manually set mesh bounds.

view details

John Chapman

commit sha a7d4cff78837a7e30a7ebfba476747f213548ec9

Profiler: Show current value as well as average.

view details

push time in a month

push eventjohn-chapman/GfxSampleFramework

John Chapman

commit sha cba373454b5f1ef70c809ae8bfaba4514c841f66

MemoryPool: Updated interface, object access via index.

view details

push time in a month

push eventjohn-chapman/GfxSampleFramework

John Chapman

commit sha 717ac10c4fcd0be5a256426c625bf2ba4bb66628

BasicRenderer: Simple exposure.

view details

John Chapman

commit sha 752eec9d85166556728efc4ab54b1b3d638da329

Resource: Always nullify _inst_ on Release().

view details

John Chapman

commit sha 0abc717351576fe91a7b47e5ae3bd5d3ae052f19

AppSample3d: Only set world path during shutdown if current world exists.

view details

John Chapman

commit sha 7ad001bf61212b65550b8761ca6a4a44b36cb3e5

WorldEditor: Misc fixes.

view details

John Chapman

commit sha 1f95f05d41348257cdcc2a59bc4ad72a81c8a18c

BasicRenderer: Merge fixes.

view details

push time in 2 months

push eventjohn-chapman/GfxSampleFramework

John Chapman

commit sha a01b8048c40112c6fe8ba2bb790685988701c66d

Physics refactor: `PhysicsWorld` object (per `World`); wraps `physx::PxScene`, `physx::PxControllerManager`, implements event callbacks directly.

view details

John Chapman

commit sha 8bc6bcff145ea7785386472c78448a5200059363

MeshViewer: Material editor.

view details

push time in 2 months

issue closedjohn-chapman/GfxSampleFramework

Mesh tags

Use tags on node names as a filter when loading from GLTF.

  • No tag = draw mesh, LOD0.
  • _PHYS = physics mesh.
  • _LODi = manual LOD mesh.

A node's children should inherit the tags of a node. E.g. the children of a named "_PHYS" will (recursively) be loaded as physics mesh.

closed time in 3 months

john-chapman

delete branch john-chapman/GfxSampleFramework

delete branch : cubemaps

delete time in 3 months

push eventjohn-chapman/GfxSampleFramework

John Chapman

commit sha 70281d49fb1ea780a86c36ba1ee4fbe69b58d3bf

Environment probe/cubemap rendering WIP.

view details

John Chapman

commit sha 8360708800eb782562309254a100867ed0ba6fd3

Texture: Implemented copyFrom(), style fixes.

view details

John Chapman

commit sha c1370e247f85ecd893f2d74462b30ed879c22dd6

SplinePath: Added support for loops, fixed eval for last segment.

view details

John Chapman

commit sha f5496f4a11a2c4140f55b47f984ab509245844c9

XFormSplinePath: Apply offset to t at evaluation time.

view details

John Chapman

commit sha c5afad3b4583e8bc73b51b6dfd29f2cd6b93270f

FilterImageLight: Copy alpha into mip0.

view details

John Chapman

commit sha 0af4b2357467f857e576e5b8f5344a3147ccb171

Serializable: Return serialized version (for backward compatibility).

view details

John Chapman

commit sha 43ca1544fd511fd9c139d33902794c971379f732

BasicRenderableComponent: Replace individual bool members with bitflags.

view details

John Chapman

commit sha 68424c49976c7f13e69be70c2401bd5de3b9e648

BasicRenderer: Env probes WIP + debug view.

view details

John Chapman

commit sha 9325ab03344e7d1b96627c85bed236c998dc09b8

Fixed warnings.

view details

John Chapman

commit sha 19c7439924dc4bc5080fb34ab227f2d8d2731b8c

DrawMesh: DRAW_MESH_ENABLE_CACHE define toggles caching behavior.

view details

John Chapman

commit sha 6c649263a7d7bab79719eb6ff88ab2f9813020ed

Merge branch 'master' into cubemaps

view details

John Chapman

commit sha 1b11a80e4b76ceca6d8ba19a8deb0ea1db323f6f

ImageLightComponent: Optional background/light, one instance only.

view details

John Chapman

commit sha 4852aa405c4fa41c43cbdc2d38f9037375b28367

Reenabled manual drawIm3d() call

view details

push time in 3 months

push eventjohn-chapman/GfxSampleFramework

John Chapman

commit sha 6e73a824678f14fc406c58594d678e673ae16412

Mesh: Filters/custom LOD from GLTF.

view details

John Chapman

commit sha 029cd8227df1f294c907cff11bafa3618372fd28

Fixed plane mesh.

view details

John Chapman

commit sha 66c72deb1c16c01aee3d9be69fd6ee0c23648379

BasicRenderer: Include LOD index in draw call key, disable LOD eccentricity coeff.

view details

John Chapman

commit sha 4790276b5c85ab138ee2916fd77245bb6ccb2f6f

Fixed Im3d text rendering.

view details

John Chapman

commit sha 6a539b9352981397fe7ac690cabc825dfabfb85d

BasicRenderableComponent: Fixed call to DrawMesh::Use().

view details

John Chapman

commit sha 5c32157d2d8edbb9ba922e98a9ca70f3a3125dda

Fixed capsule GLTF orientation.

view details

John Chapman

commit sha 7ca9b12b707ef042fb3a4e7e36bd988197426b3b

WorldEditor: Correctly release the world reference on delete.

view details

John Chapman

commit sha fde65fac0db3a042a87b267a03dbd250efc5ead1

World: reset() for nodes/components.

view details

John Chapman

commit sha 6c649263a7d7bab79719eb6ff88ab2f9813020ed

Merge branch 'master' into cubemaps

view details

John Chapman

commit sha 1b11a80e4b76ceca6d8ba19a8deb0ea1db323f6f

ImageLightComponent: Optional background/light, one instance only.

view details

John Chapman

commit sha 4852aa405c4fa41c43cbdc2d38f9037375b28367

Reenabled manual drawIm3d() call

view details

push time in 3 months

push eventjohn-chapman/GfxSampleFramework

John Chapman

commit sha 5c32157d2d8edbb9ba922e98a9ca70f3a3125dda

Fixed capsule GLTF orientation.

view details

John Chapman

commit sha 7ca9b12b707ef042fb3a4e7e36bd988197426b3b

WorldEditor: Correctly release the world reference on delete.

view details

John Chapman

commit sha fde65fac0db3a042a87b267a03dbd250efc5ead1

World: reset() for nodes/components.

view details

push time in 3 months

push eventjohn-chapman/GfxSampleFramework

John Chapman

commit sha 6a539b9352981397fe7ac690cabc825dfabfb85d

BasicRenderableComponent: Fixed call to DrawMesh::Use().

view details

push time in 3 months

push eventjohn-chapman/GfxSampleFramework

John Chapman

commit sha 66c72deb1c16c01aee3d9be69fd6ee0c23648379

BasicRenderer: Include LOD index in draw call key, disable LOD eccentricity coeff.

view details

John Chapman

commit sha 4790276b5c85ab138ee2916fd77245bb6ccb2f6f

Fixed Im3d text rendering.

view details

push time in 3 months

push eventjohn-chapman/GfxSampleFramework

John Chapman

commit sha 029cd8227df1f294c907cff11bafa3618372fd28

Fixed plane mesh.

view details

push time in 3 months

push eventjohn-chapman/GfxSampleFramework

John Chapman

commit sha 6e73a824678f14fc406c58594d678e673ae16412

Mesh: Filters/custom LOD from GLTF.

view details

push time in 3 months

push eventjohn-chapman/GfxSampleFramework

John Chapman

commit sha 9325ab03344e7d1b96627c85bed236c998dc09b8

Fixed warnings.

view details

John Chapman

commit sha 19c7439924dc4bc5080fb34ab227f2d8d2731b8c

DrawMesh: DRAW_MESH_ENABLE_CACHE define toggles caching behavior.

view details

push time in 3 months

started0xAX/linux-insides

started time in 3 months