Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
3066 commits
Select commit Hold shift + click to select a range
ce0eddd
[examples] Use keymapping without modifiers.
dlyr Oct 27, 2022
13ea5f4
[doc] Improve KeyMappingManager doc with cleaner snippets.
dlyr Oct 27, 2022
4c5acd6
[gui] clean viewer commented lines.
dlyr Nov 8, 2022
03330bf
Merge pull request #906 from dlyr/exposeBinding
dlyr Nov 16, 2022
dd64288
Update version to 1.3.12 [skip ci]
github-actions[bot] Nov 16, 2022
df19a63
[core] Fix taskQueue worker starts while runInThisThread.
dlyr Nov 15, 2022
b40cbec
[core] Allow no thread task queue, and use 2nd form of wait.
dlyr Nov 15, 2022
40ec570
[engine] gpuTaskQueue has no threads.
dlyr Nov 15, 2022
6a01296
[examples] Add a second thread in TexturedQuadDynamic.
dlyr Nov 15, 2022
6715c39
[core] TaskQueue lock guard task list modifications.
dlyr Nov 15, 2022
5564ae3
[core] typo in comment TaskQueue.hpp
dlyr Nov 15, 2022
c10e543
[core] move lock before assert in addDependency TaskQueue.cpp
dlyr Nov 15, 2022
1b91655
[core] Rephrase doc in TaskQueue.hpp
dlyr Nov 15, 2022
d55d2f6
[core] clean include and move lock in TaskQueue.cpp
dlyr Nov 15, 2022
6944e47
[examples] Stops second when quit TexturedQuadDynamic.
hiergaut Nov 15, 2022
a3d0593
Merge pull request #1024 from dlyr/fix-task-queue
dlyr Nov 16, 2022
fc8fc24
Update version to 1.3.13 [skip ci]
github-actions[bot] Nov 16, 2022
f447977
[core] Add generic variable set
MathiasPaulin Nov 14, 2022
550a3f8
[core] fix codacy bad reporting
MathiasPaulin Nov 14, 2022
166ccfc
[unittests][core] test generic variable set
MathiasPaulin Nov 14, 2022
ffc1bf4
Merge pull request #1022 from MathiasPaulin/core-variables
MathiasPaulin Nov 17, 2022
fa88b85
Update version to 1.3.14 [skip ci]
github-actions[bot] Nov 17, 2022
8408906
[engine] guard empty m_animations access.
dlyr Nov 13, 2022
cc5af82
[engine] Add get/set bone transformation using boneIdx.
dlyr Nov 13, 2022
09e9b71
[engine] add mesh name, bone weight, bone bind matrix setters.
dlyr Nov 13, 2022
76f0b1d
[core] use isinfinite instead of isnormal to check invalid numbers.
dlyr Nov 13, 2022
79f01fa
[core] Add makeSharpCylinder, with side segment specification.
dlyr Nov 13, 2022
d953f0f
[core] Add smoothstep template (as in glsl).
dlyr Nov 13, 2022
314e16f
[examples] simple skinning example.
dlyr Nov 13, 2022
b5d1833
[engine] Add doc to new methods in SkinningComponent.
dlyr Nov 14, 2022
e7b09f5
[engine] doc fix typos in SkinningComponent.hpp
dlyr Nov 14, 2022
08f18b1
[core] Keep only "sharp" cylinder.
dlyr Nov 14, 2022
8b0cbe9
[examples] Clean and comment simple skinning.
dlyr Nov 14, 2022
597be5f
[engine] Add const ref for range based loop for SkeletonComponent.
dlyr Nov 14, 2022
77785b0
[tests] Add smoothstep unittest.
dlyr Dec 7, 2022
d012845
[core] smoothstep only one template parameter.
dlyr Dec 9, 2022
0a2e4e2
[tests] test smoothstep for float and double.
dlyr Dec 9, 2022
ca29330
[core] smoothstep for types <T, T, Matrix<T, ...> > (e.g. <Scalar, Sc…
MathiasPaulin Dec 12, 2022
e443095
[tests] test smoothstep for Vector3 and Matrix2
MathiasPaulin Dec 12, 2022
69c6dc8
Merge pull request #1021 from dlyr/simpleSkinning
dlyr Dec 13, 2022
babcdb5
Update version to 1.3.15 [skip ci]
github-actions[bot] Dec 13, 2022
5f06975
[headless] make OpenGLContext abstract and implement GlfwOpenGLContext
MathiasPaulin Dec 7, 2022
274ce55
[headless] CLIViewer takes the context to use at creation
MathiasPaulin Dec 7, 2022
7724f51
[unittests][engine] update context creation according to new profilee
MathiasPaulin Dec 7, 2022
0e1840e
[headless] add support for egl OpenGL context using EGL and pbuffers
MathiasPaulin Dec 7, 2022
096db62
[headless] Remove Glfw explicit dependency
MathiasPaulin Dec 8, 2022
1935048
[examples][headless] allow to choose OpenGL context provider at confi…
MathiasPaulin Dec 7, 2022
4ad98c0
[tests][unittests] OpenGL tests use EGL if available
MathiasPaulin Dec 8, 2022
1237daa
[tests][integration] remove usage of xvfb
MathiasPaulin Dec 9, 2022
033c6ea
[ci] Enable OpenGL tests on Linux (will use EGL)
MathiasPaulin Dec 8, 2022
bdce4a8
[headless] remove inlines files
MathiasPaulin Dec 10, 2022
3d8ab07
Merge pull request #1029 from MathiasPaulin/egl-headless
MathiasPaulin Dec 13, 2022
393adde
Update version to 1.3.16 [skip ci]
github-actions[bot] Dec 13, 2022
167123c
[core] Add doxygen doc for Math namespace.
dlyr Dec 13, 2022
ce98e70
Update version to 1.4.1 [skip ci]
dlyr Dec 14, 2022
c024529
Merge pull request #1030 from dlyr/doc-math
dlyr Dec 14, 2022
aa4c33c
Update version to 1.4.2 [skip ci]
github-actions[bot] Dec 14, 2022
3aa23cd
[headless] Move target include before set_target_property
dlyr Dec 14, 2022
59ac2c6
Merge pull request #1031 from dlyr/fix-headless-config
dlyr Dec 15, 2022
b1d805c
Update version to 1.4.3 [skip ci]
github-actions[bot] Dec 15, 2022
eb83666
[core] fix VariableSet
MathiasPaulin Nov 25, 2022
ac7a448
[tests][unittests] update VariableSet unittests
MathiasPaulin Dec 8, 2022
3172225
[core] make some methods name clearer
MathiasPaulin Jan 16, 2023
1a347ef
Merge pull request #1033 from MathiasPaulin/fix-variableSet
dlyr Jan 18, 2023
6576aa1
Update version to 1.4.4 [skip ci]
github-actions[bot] Jan 18, 2023
416aee7
[gui] save current action in trackball
dlyr Dec 19, 2022
a2f5d30
[gui] Move last mouse position and compute delta to base class.
dlyr Jan 15, 2023
1d7b04c
[gui] Refactor FlightCameraManipulator to use callback.
dlyr Jan 15, 2023
3fbf937
[gui] Use callback for rotate around.
dlyr Jan 15, 2023
baba494
[gui] Remove m_currentAction, since deprecated.
dlyr Jan 15, 2023
c95fca9
[gui] Add all known manipulator keymapping setup in viewer.
dlyr Jan 15, 2023
afa91aa
[gui] Refactor FlightCameraManipulator default binding setup.
dlyr Jan 15, 2023
3cc330d
[examples] Add changeCamera to drawPrimitives ex.
dlyr Jan 15, 2023
b3741ba
[gui] Flight manipulator use dy for zoom instead of dy.
dlyr Jan 15, 2023
13928c7
[examples] draw prim ex add fitCamera after manipulator change.
dlyr Jan 15, 2023
58d63f6
[gui] Remove deprecated from flight, make sensitivity a bit more cons…
dlyr Jan 15, 2023
dccd36f
[examples] update CustomCameraManipulator wrt recent changes.
dlyr Jan 15, 2023
7ec4365
[gui] add explicit to RotateAround ctor.
dlyr Jan 16, 2023
1efc47c
[gui] update tuple -> pair.
dlyr Feb 2, 2023
01095a1
Merge pull request #1034 from dlyr/fix-camera
dlyr Feb 9, 2023
1271d44
Update version to 1.4.5 [skip ci]
github-actions[bot] Feb 9, 2023
93231c8
[engine] Check shader validity in ForwardRenderer.
dlyr Jun 17, 2022
dae1490
[engine] fix PointLight includes
dlyr Aug 22, 2022
38965b1
[headless] Do not print error if help in CLIViewer.
dlyr Sep 9, 2022
fd6d706
[engine] Remove bad unused forward decl.
dlyr Dec 6, 2022
d275e97
[engine] add geometry comp ctor from mesh ptr.
dlyr Jan 20, 2023
7c4e171
[gui] fix inl in inl include.
dlyr Nov 14, 2022
ea53958
[ci] directly run script to avoid dubious ownership in docker
dlyr Feb 9, 2023
111a377
Merge pull request #1035 from dlyr/paintyFixes
dlyr Feb 10, 2023
1f0640c
Update version to 1.4.6 [skip ci]
github-actions[bot] Feb 10, 2023
5eec9f4
[gui] move ui include after other includes for about dialog and timel…
dlyr Jan 22, 2023
f84f205
[gui][cmake] use autouic instead of qt_wrap_uis
dlyr Jan 22, 2023
1c2ef6a
[gui] Cleaner help dialog with vertical scroll QTextEdit.
dlyr Jan 22, 2023
48a0d79
[gui] Move inl to hpp for KeyMappingManager.
dlyr Jan 22, 2023
1efbe8f
Merge pull request #1036 from dlyr/better-help-dialog
dlyr Feb 10, 2023
a398229
Update version to 1.4.7 [skip ci]
github-actions[bot] Feb 10, 2023
70fcf45
[core] add getTaskId and removeTask to taskQueue.
dlyr Feb 11, 2023
e3acc4e
[tests] add removeTask and getTaskId unit tests.
dlyr Feb 11, 2023
5770e01
[core][engine] Remove naked new registerTask.
dlyr Nov 8, 2022
228e5ba
[core] guard remove task for invalid/outofbound taskId
dlyr Feb 11, 2023
e4642fc
[tests] remove invalid task id unit test.
dlyr Feb 11, 2023
dbd6704
[engine] add RadiumEngine::removeGpuTask, and doc.
dlyr Feb 11, 2023
b3c671e
[engine] remove updateDataTask on texture delete.
dlyr Feb 11, 2023
a646abf
[examples] update naked new -> make_unique for Tasks.
dlyr Feb 11, 2023
f9f75f2
[doc] update naked new -> make_unique for Tasks.
dlyr Feb 11, 2023
874edba
[doc] fix missing std::move
dlyr Feb 13, 2023
557876b
Merge pull request #1041 from dlyr/remove-task
dlyr Feb 17, 2023
053db7d
Update version to 1.4.8 [skip ci]
github-actions[bot] Feb 17, 2023
76abec1
[gui] Use devicePixelRatio to compute gl viewport and render size.
dlyr Feb 3, 2023
8acc627
[gui] make Qt Viewer working on any hDPI display/system
MathiasPaulin Feb 15, 2023
8f46f29
[gui] use event->pos() (deprecated in Qt6) instead of event->position…
MathiasPaulin Feb 15, 2023
90b8389
[gui] allows to dynamically change pixelaspectRatio on windows
MathiasPaulin Feb 15, 2023
40ecd05
[gui] Add Viewer::toDevice member function.
dlyr Feb 24, 2023
c87a3e3
[gui] Convert pivot coordinates to device pixel coordinates.
dlyr Feb 24, 2023
3d6ec6b
[gui] Display pivot when set for RotateAround.
dlyr Feb 24, 2023
1b8c857
[gui] remove LogicalToDeviceCoordinateTransformer.
dlyr Feb 24, 2023
2899561
[gui] Move context lock to Viewer::resizeGL.
dlyr Feb 24, 2023
41403d9
[gui] fix typo in doc
MathiasPaulin Feb 24, 2023
8a4d134
Merge pull request #1040 from dlyr/1039-wrong-viewport-on-hdpi-displa…
dlyr Feb 25, 2023
630e008
Update version to 1.4.9 [skip ci]
github-actions[bot] Feb 25, 2023
ad22599
[doc] Add lines relative to branch checkout.
dlyr Mar 16, 2023
1185ebb
Merge pull request #1044 from dlyr/compile-doc
MathiasPaulin Mar 17, 2023
2830037
Update version to 1.4.10 [skip ci]
github-actions[bot] Mar 17, 2023
93bfefd
[core] Add TypeList (simple management) to TypeUtils
MathiasPaulin Jan 30, 2023
98d572b
[core] VariableSet - refactor and improvement
MathiasPaulin Jan 12, 2023
78bd51a
[tests] testing VariableSet
MathiasPaulin Jan 30, 2023
ebca059
[engine] RenderParameters now uses VariableSet
MathiasPaulin Nov 25, 2022
d09a019
[tests] update RenderParameter unittests
MathiasPaulin Nov 25, 2022
9acb9c4
[engine] improve RenderObject wrt RenderParameters management
MathiasPaulin Jan 30, 2023
0e613a6
[engine] improve ForwardRenderer wrt RenderParameters (to be continued)
MathiasPaulin Jan 30, 2023
7ab4bff
[engine] update lights to use new renderparameter facilities
MathiasPaulin Dec 8, 2022
6279fbe
[engine] update Materials to use new RenderParameters facilities
MathiasPaulin Jan 30, 2023
132d69b
[tests] update unitests on Materials
MathiasPaulin Jan 30, 2023
0b58892
[gui] update ParameterSetEditor to use new RenderParameters implement…
MathiasPaulin Nov 25, 2022
4252acd
[gui] update Gizmo to use new RenderParameters implementation
MathiasPaulin Dec 8, 2022
d064a92
[examples] fix private access to renderparameters
MathiasPaulin Jan 30, 2023
1e561b5
[engine] fix typo in Materials
MathiasPaulin Jan 31, 2023
75adfde
[engine] fix typo in ForwardRenderer
MathiasPaulin Jan 31, 2023
d8740e4
[gui] fix typo in Gizmo
MathiasPaulin Jan 31, 2023
954fcd6
[examples] fix typo in RawShader demo
MathiasPaulin Jan 31, 2023
2ceeceb
[engine] remove unneeded include (tbc)
MathiasPaulin Jan 31, 2023
467a1fc
[tests] test TypeList Size
MathiasPaulin Jan 31, 2023
ef8affd
[core] remove unneeded code
MathiasPaulin Mar 8, 2023
0fdf894
[engine][gui] remove unneeded RenderParameter decorator
MathiasPaulin Mar 8, 2023
a508313
[tests] update unittests according to RenderParameter decorator removal
MathiasPaulin Mar 8, 2023
59afffc
[examples] update examples according to RenderParameter decorator rem…
MathiasPaulin Mar 8, 2023
3e9f5f3
[core] improve codacy result
MathiasPaulin Mar 8, 2023
41af62a
[tests] improve coverage on VariableSet
MathiasPaulin Mar 8, 2023
2fbc36d
[engine] improve doc on RenderParameter
MathiasPaulin Mar 8, 2023
fe7fd0d
[example] fix RadiumGlTF inclusion path
MathiasPaulin Mar 14, 2023
67d7b6e
[core] remove superfluous code
MathiasPaulin Mar 15, 2023
bef0d0d
[core][engine][tests] access to VariableSet by type now retur an opti…
MathiasPaulin Mar 16, 2023
4dd2627
[core][engine][tests][examples] access to a typed variable into Varia…
MathiasPaulin Mar 16, 2023
36e3744
[core][engine]fix missing header for windows
MathiasPaulin Mar 16, 2023
4d1607b
[engine][gui][tests][examples] Remove superfluous type aliases
MathiasPaulin Mar 16, 2023
f7895a1
[core][tests] Add EnumConverter class in Core/Utils
MathiasPaulin Mar 24, 2023
c5d066f
[core][tests] make visiting of VariableSet more generic
MathiasPaulin Mar 24, 2023
de5ccd4
[engine][gui][tests][examples] simplify renderParameter implementation
MathiasPaulin Mar 24, 2023
d8273e9
[core][engine] remove remaining todo
MathiasPaulin Mar 27, 2023
f695e39
[tests][examples] remove remaining todo
MathiasPaulin Mar 27, 2023
4348c6f
[examples] output vector in line for ParameterEdition.
MathiasPaulin Mar 28, 2023
1aeb7fc
[core] VariableSet: make vtable a singleton
dlyr Mar 30, 2023
e84a10d
[engine] Forward renderer clean RenderParameter usage (contd.).
dlyr Apr 1, 2023
ca4bda9
[engine] remove static tmp from ro
dlyr Apr 1, 2023
26004dc
[core][tests] fix surprising demangling changes on macos after upgrad…
MathiasPaulin Apr 1, 2023
b167028
[engine][gui][examples] remove const_cast from Light::getRenderParame…
MathiasPaulin Apr 1, 2023
a64f204
[core] fix demangling on windows also.
MathiasPaulin Apr 1, 2023
3f03934
[engine] RenderParameters: remove unused getter.
dlyr Apr 1, 2023
eb67109
[engine] Move one line inline to class decl.
dlyr Apr 1, 2023
2c2ce0e
[engine] add non const getters.
MathiasPaulin Apr 2, 2023
9645a27
[engine] make m_params private, derived lights use getter.
dlyr Apr 2, 2023
31541d7
[engine] Remove code duplication for non const getter.
dlyr Apr 2, 2023
4e6aedc
[examples] Fix non ref const string arg.
dlyr Apr 2, 2023
687a3c3
Merge pull request #1027 from MathiasPaulin/renderparameter-as-coreva…
MathiasPaulin Apr 3, 2023
d4c1f82
Update version to 1.4.11 [skip ci]
github-actions[bot] Apr 3, 2023
4a4da2a
[scripts] to insert inl in place of its include in hpp.
dlyr Nov 14, 2022
213ff46
[scripts] update generate file list without inl.
dlyr Apr 3, 2023
6b373b8
[cmake] remove inlines from CMakeLists.txt files.
dlyr Nov 14, 2022
d1308f6
run file list script
dlyr Apr 3, 2023
d645faa
run noinl.py
dlyr Apr 3, 2023
cf190cb
remove inl
dlyr Apr 3, 2023
704d61b
clean hpp
dlyr Apr 3, 2023
131285b
[core] Fix open mesh specialization.
dlyr Apr 3, 2023
15dd2a0
[doc] update convention wrt inl files.
dlyr Apr 3, 2023
a2c0d82
Merge pull request #1037 from dlyr/removeInlines
dlyr Apr 3, 2023
4160bf3
Update version to 1.4.12 [skip ci]
github-actions[bot] Apr 3, 2023
56d8115
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Nov 29, 2022
e66463a
[pre-commit] Apply new clang-format.
dlyr Apr 3, 2023
946a7ea
[ci] Markdown lint do not check link fragment.
dlyr Dec 15, 2022
17e0a95
[doc] Fix minor typo.
dlyr Dec 15, 2022
134d1b3
[doc] Fix markdown format by including correct link.
dlyr Jan 16, 2023
3a30cbf
[core] remove undefined unlockLayer2.
dlyr Apr 4, 2023
fa95ce4
Merge pull request #1047 from dlyr/pre-commit-manual-update
nmellado Apr 5, 2023
6090aee
Update version to 1.4.13
github-actions[bot] Apr 5, 2023
8fcae16
Update version to 1.5.0 [skip ci]
github-actions[bot] Apr 5, 2023
38b23f5
[git] Add compile_commands.json .gitignore
dlyr Jul 15, 2022
215bfa0
[tests] Add brush radius getter in renderer
Mafo369 Jul 4, 2022
ccafe22
[tests] Add curve editor example
Mafo369 Jul 4, 2022
86a2eb1
[tests] Add CubicBezierSpline to Curves and adapt approximation accor…
Mafo369 Jul 5, 2022
3d5ee83
[tests] Refactor CubicBezierSpline
Mafo369 Jul 6, 2022
a3ca000
[tests] Cleanup and add comments to curve editor
Mafo369 Jul 6, 2022
0bd031c
[tests] Refactor CubicBezierSpline
Mafo369 Jul 6, 2022
8a6507e
[tests] Cleanup and add comments to curve editor
Mafo369 Jul 6, 2022
092c7ca
[tests] Rename CubicBezierSpline to PiecewiseCubicBezier
Mafo369 Jul 6, 2022
56c0118
[tests] Remove useless header
Mafo369 Jul 7, 2022
f8e6bb3
[tests] Refactor with namespaces for curve editor
Mafo369 Jul 7, 2022
2ad20d4
[tests] Refactor point/curve component creation
Mafo369 Jul 7, 2022
d60cccf
[tests] small refactor
Mafo369 Jul 7, 2022
0c64710
[tests] Change transformation logic
Mafo369 Jul 12, 2022
2249295
[tests] Change smoothness and symetry to be a point attribute
Mafo369 Jul 13, 2022
2066565
[tests] Small cleanup
Mafo369 Jul 13, 2022
d5bd0d6
[core] Fix IndexedGeometry.
dlyr Jul 20, 2022
c4780ed
[engine] Prepare API of GeometryDisplayable
nmellado Jul 19, 2021
6bdafb4
[engine] add GeometryDisplayableComponent
dlyr Mar 31, 2022
29bdf55
[tests] Use GeometryDisplayableComponent in HelloRadium (nothing draw…
dlyr Mar 31, 2022
f125b0d
[core] Switch struct -> class for AbstractGeometry.
dlyr Jul 20, 2022
c3de6ef
[core] Use macro for clone implementation.
dlyr Jul 20, 2022
2ddfeac
[engine] double wireframe (ad hoc for quad mesh).
dlyr Jul 20, 2022
a1b1287
[core][engine] Use demangleType.
dlyr Sep 15, 2022
f304908
[engine] user BijectiveAssociation for translation table.
dlyr Sep 18, 2022
0e71ea7
[core][engine] Move triangulate to core.
dlyr Sep 18, 2022
d36fbc0
[engine] Add empty ctor.
dlyr Sep 18, 2022
92fd804
[engine] use geometrydisplayable for components.
dlyr Sep 18, 2022
7d25da6
[engine] rename correspondance -> matching
dlyr Sep 18, 2022
d6015ad
[engine] GeometrySystem use GeometryDisplayable comp.
dlyr Sep 18, 2022
3741bf2
[examples] Start using GeometryDisplayable in draw prim.
dlyr Sep 18, 2022
d06fed2
[engine] GeometryComponent clean include.
dlyr Sep 19, 2022
fd3ea55
[engine] Renderer remove debug print.
dlyr Sep 19, 2022
ed01e2d
[engine] handle line index layer picking render mode.
dlyr Sep 19, 2022
9b488b9
[core] MeshPrimitives remove debug print.
dlyr Sep 19, 2022
3560eca
[core] IndexedGeometry remove debug print.
dlyr Sep 19, 2022
a3ad0a5
[examples] HelloRadium remove debug print.
dlyr Sep 19, 2022
78c3db9
[engine] Remove unused LineMeshComponent.
dlyr Oct 27, 2022
074d331
[examples] add fixed light in skinning example.
dlyr Dec 8, 2022
a14f4da
[core] use inverse transpose for normal lbs.
dlyr Dec 8, 2022
269e2b2
[core] comment typo in trianglemesh
dlyr Dec 8, 2022
420be76
[core][engine] use AttribArrayGeometry as skinning data.
dlyr Dec 8, 2022
5ac4410
[core] register rw on AttribArrayGeometry for SurfaceMeshComponent.
dlyr Dec 8, 2022
7a54114
Merge branch 'curve-editor-example-app' into release-candidate
dlyr Apr 6, 2023
271bdbd
[external] Fix pass Qt version to external build.
dlyr Apr 8, 2023
485590f
Merge branch 'fix-external-qt-version' into paintyVersionRpRb
dlyr Apr 8, 2023
a02b6b5
[core] Export VariableSetFunctions.
dlyr Apr 13, 2023
de5cfb2
fix msvc warning
dlyr Jun 14, 2023
7bc86f7
add missing exports
dlyr Jun 14, 2023
172f7ff
remove copy of unexisting assets
dlyr Jun 14, 2023
e62fe7e
msvc error on capture ? to revert
dlyr Jun 14, 2023
0a235a9
start linear blend skinning on gpu
Sep 18, 2023
e95c5c5
add lbs to blinn phong vertex shader
Sep 21, 2023
4fec4f3
build render technique
ntsh-oni Sep 21, 2023
a5f4052
do not update vertices on CPU if the skinning types uses the GPU and …
ntsh-oni Sep 25, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
60 changes: 60 additions & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
---
BasedOnStyle: LLVM
Language: Cpp
Standard: Cpp11
AllowShortFunctionsOnASingleLine: Inline
AllowShortBlocksOnASingleLine: true
AllowShortIfStatementsOnASingleLine: true
AlwaysBreakTemplateDeclarations: true
BreakBeforeBraces: Custom
BraceWrapping:
AfterClass: true
AfterControlStatement: false
AfterEnum: false
AfterFunction: false
AfterNamespace: false
AfterObjCDeclaration: false
AfterStruct: false
AfterUnion: false
AfterExternBlock: true
BeforeCatch: true
BeforeElse: true
IndentBraces: false
SplitEmptyFunction: false
SplitEmptyRecord: false
SplitEmptyNamespace: false
ColumnLimit: 100
IndentWidth: 4
TabWidth: 4
UseTab: Never
NamespaceIndentation: None
IndentPPDirectives: 'AfterHash'
AlignEscapedNewlines: 'Left'
Cpp11BracedListStyle: true
ConstructorInitializerAllOnOneLineOrOnePerLine: true
BreakConstructorInitializers: AfterColon
SortUsingDeclarations: true
PointerAlignment: Left
SpacesInParentheses: true
AlignTrailingComments: true
AlignConsecutiveAssignments: true
AllowAllParametersOfDeclarationOnNextLine: false
BinPackArguments: false
BinPackParameters: false
#tests for ci
SpacesInCStyleCastParentheses: false

SpaceBeforeCpp11BracedList: true
StatementMacros: [
'KeyMappingViewer',
'KeyMappingGizmo',
'KeyMappingCamera',
'KeyMappingFlightManipulator',
'KeyMappingRotateAroundCamera',
'KeyMappingDummy',
'GL_ASSERT',
'GL_CHECK_ERROR',
'CORE_UNUSED',
'CORE_ASSERT'
]
...
124 changes: 124 additions & 0 deletions .cmake-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
with section("parse"):
additional_commands = { 'add_imported_dir': { 'kwargs': {'FROM': 1, 'TO': '+'},
'pargs': {'flags': [], 'nargs': '*'}},
'configure_bundled_radium_app': { 'kwargs': { 'NAME': 1,
'PREFIX': 1,
'RESOURCES': '+'},
'pargs': { 'flags': ['USE_PLUGINS'],
'nargs': '*'}},
'configure_cmdline_radium_app': { 'kwargs': { 'NAME': 1,
'PREFIX': 1,
'RESOURCES': '+'},
'pargs': {'flags': [], 'nargs': '*'}},
'configure_radium_app': { 'kwargs': {'NAME': 1, 'RESOURCES': '+'},
'pargs': {'flags': ['USE_PLUGINS'], 'nargs': '*'}},
'configure_radium_library': { 'kwargs': { 'FILES': '+',
'NAMESPACE': 1,
'PACKAGE_CONFIG': 1,
'PACKAGE_DIR': 1,
'TARGET': 1,
'TARGET_DIR': 1},
'pargs': {'flags': [], 'nargs': '*'}},
'configure_radium_package': { 'kwargs': { 'NAME': 1,
'PACKAGE_CONFIG': 1,
'PACKAGE_DIR': 1},
'pargs': {'flags': [], 'nargs': '*'}},
'configure_radium_plugin': { 'kwargs': { 'HELPER_LIBS': '+',
'NAME': 1,
'RESOURCES': '+'},
'pargs': { 'flags': ['INSTALL_IN_RADIUM_BUNDLE'],
'nargs': '*'}},
'configure_radium_target': {'pargs': {'nargs': 1}},
'configure_windows_radium_app': { 'kwargs': { 'NAME': 1,
'PREFIX': 1,
'RESOURCES': '+'},
'pargs': { 'flags': ['USE_PLUGINS'],
'nargs': '*'}},
'install_plugin_resources': { 'kwargs': { 'BUILD_LOCATION': 1,
'DIRECTORY': 1,
'FILES': '+',
'INSTALL_LOCATION': 1,
'TARGET': 1},
'pargs': {'flags': [], 'nargs': '*'}},
'install_qt_plugin': {'pargs': {'nargs': 3}},
'install_target_resources': { 'kwargs': { 'FILES': '+',
'RESOURCES_DIR': 1,
'RESOURCES_INSTALL_DIR': 1,
'TARGET': 1},
'pargs': {'flags': [], 'nargs': '*'}},
'populate_local_dependencies': { 'kwargs': {'DUMMY_MULTI': '+', 'NAME': 1},
'pargs': { 'flags': ['DUMMY_OPTION'],
'nargs': '*'}},
'print_target_properties': {'pargs': {'nargs': 1}},
'radium_exported_resources': { 'kwargs': { 'ACCESS_FROM_PACKAGE': 1,
'PREFIX': 1,
'TARGET': 1},
'pargs': {'flags': [], 'nargs': '*'}}}
override_spec = {}
vartags = []
proptags = []

with section("format"):
disable = False
line_width = 100
tab_size = 4
use_tabchars = False
fractional_tab_policy = 'use-space'
max_subgroups_hwrap = 4
max_pargs_hwrap = 8
max_rows_cmdline = 2
separate_ctrl_name_with_space = False
separate_fn_name_with_space = False
dangle_parens = True
dangle_align = 'prefix'
min_prefix_chars = 4
max_prefix_chars = 10
max_lines_hwrap = 2
line_ending = 'unix'
command_case = 'canonical'
keyword_case = 'upper'
always_wrap = []
enable_sort = True
autosort = False
require_valid_layout = False
layout_passes = {}

with section("markup"):
bullet_char = '*'
enum_char = '.'
first_comment_is_literal = True
literal_comment_pattern = None
fence_pattern = '^\\s*([`~]{3}[`~]*)(.*)$'
ruler_pattern = '^\\s*[^\\w\\s]{3}.*[^\\w\\s]{3}$'
explicit_trailing_pattern = '#<'
hashruler_min_length = 10
canonicalize_hashrulers = True
enable_markup = True

with section("lint"):
disabled_codes = ["E1120"]
function_pattern = '[0-9a-z_]+'
macro_pattern = '[0-9a-z_]+'
global_var_pattern = '[A-Z][0-9A-Z_]+'
internal_var_pattern = '_[A-Z][0-9A-Z_]+'
local_var_pattern = '[a-z][a-z0-9_]+'
private_var_pattern = '_[0-9a-z_]+'
public_var_pattern = '[A-Z][0-9A-Z_]+'
argument_var_pattern = '[a-z][a-z0-9_]+'
keyword_pattern = '[A-Z][0-9A-Z_]+'
max_conditionals_custom_parser = 2
min_statement_spacing = 1
max_statement_spacing = 2
max_returns = 6
max_branches = 12
max_arguments = 5
max_localvars = 15
max_statements = 50

with section("encode"):
emit_byteorder_mark = False
input_encoding = 'utf-8'
output_encoding = 'utf-8'

with section("misc"):
per_command = {}
23 changes: 23 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Set the default behavior, in case people don't have core.autocrlf set.
* text eol=lf

# Explicitly declare text files you want to always be normalized and converted
# to native line endings on checkout.
*.cpp text
*.hpp text
*.inl text
*.glsl text
*.md text
*.qrc text
*.xml text
*.sh text

# Declare files that will always have CRLF line endings on checkout.
*.sln text eol=crlf

# Denote all files that are truly binary and should not be modified.
*.png binary
*.jpg binary
*.pvm binary
*.exr binary
*.pfm binary
138 changes: 138 additions & 0 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
# Contributing to Radium

:+1::tada: First off, thanks for taking the time to contribute! :tada::+1:

The following is a set of guidelines for contributing to the Radium-Engine echosystem, which are hosted in the [STORM-IRIT Organization](https://github.com/STORM-IRIT) on GitHub. These are mostly guidelines, not rules. Use your best judgment, and feel free to propose changes to this document in a pull request.

## Table Of Contents

[Code of Conduct](#code-of-conduct)

[I don't want to read this whole thing, I just have a question!!!](#i-dont-want-to-read-this-whole-thing-i-just-have-a-question)

[What should I know before I get started?](#what-should-i-know-before-i-get-started)

* [Radium Libraries](#radium-libraries)
* [Radium Applications and Plugins](#radium-applications-and-plugins)
* [Radium Design Decisions](#design-decisions)

[How Can I Contribute?](#how-can-i-contribute)

* [Reporting Bugs](#reporting-bugs)
* [Suggesting Enhancements](#suggesting-enhancements)
* [Your First Code Contribution](#your-first-code-contribution)
* [Pull Requests](#pull-requests)

[Styleguides](#styleguides)

* [Git Commit Messages](#git-commit-messages)
* [Specs Styleguide](#specs-styleguide)
* [Documentation Styleguide](#documentation-styleguide)

[Additional Notes](#additional-notes)

* [Issue and Pull Request Labels](#issue-and-pull-request-labels)

## I don't want to read this whole thing I just have a question

> **Note:** As the size of the Radium community remains limited, we keep using github issue system to provide support for users. If you have a question, first try to find a solution in this file, then browse the existing issues, and, if you still need support, open a new issue stating your problem.

## What should I know before I get started?

Check Radium-Engine's [README](https://github.com/STORM-IRIT/Radium-Engine) and documentation about [concepts](https://storm-irit.github.io/Radium-Engine/master/conceptsmanual.html) and [basics](https://storm-irit.github.io/Radium-Engine/master/basicsmanual.html)

## How Can I Contribute?

### Reporting Bugs

This section guides you through submitting a bug report for Radium. Following these guidelines helps maintainers and the community understand your report :pencil:, reproduce the behavior :computer: :computer:, and find related reports :mag_right:.

Before creating bug reports, please check [this list](#before-submitting-a-bug-report) as you might find out that you don't need to create one. When you are creating a bug report, please [include as many details as possible](#how-do-i-submit-a-good-bug-report). Fill out [the required template](ISSUE_TEMPLATE.md), the information it asks for helps us resolve issues faster.

> **Note:** If you find a **Closed** issue that seems like it is the same thing that you're experiencing, open a new issue and include a link to the original issue in the body of your new one.

#### How Do I Submit A (Good) Bug Report?

Bugs are tracked as [GitHub issues](https://guides.github.com/features/issues/). After you've determined which component your bug is related to (e.g. [Radium Libraries](#radium-libraries) or [Radium Applications and Plugins](#radium-applications-and-plugins) ), create an issue on that repository and provide the following information by filling in [the template](ISSUE_TEMPLATE.md).

Explain the problem and include additional details to help maintainers reproduce the problem:

* **Use a clear and descriptive title** for the issue to identify the problem.
* **Describe the exact steps which reproduce the problem** in as many details as possible. For example, start by explaining how you compiled Radium, e.g. which command exactly you used in the terminal, if you used the libraries or packages applications. When listing steps, **don't just say what you did, but explain how you did it**.
* **Provide specific examples to demonstrate the steps**. Include links to files or GitHub projects, or copy/pasteable snippets, which you use in those examples. If you're providing snippets in the issue, use [Markdown code blocks](https://help.github.com/articles/markdown-basics/#multiple-lines).
* **Describe the behavior you observed after following the steps** and point out what exactly is the problem with that behavior.
* **Explain which behavior you expected to see instead and why.**
* **Include screenshots and animated GIFs** which show you following the described steps and clearly demonstrate the problem, when it relates to GUI and applications. You can use [this tool](https://www.cockos.com/licecap/) to record GIFs on macOS and Windows, and [this tool](https://github.com/colinkeenan/silentcast) or [this tool](https://github.com/GNOME/byzanz) on Linux.
* **If you're reporting that Radium crashed**, include a crash report with a stack trace from the operating system. On macOS, the crash report will be available in `Console.app` under "Diagnostic and usage information" > "User diagnostic reports".
Include the crash report in the issue in a [code block](https://help.github.com/articles/markdown-basics/#multiple-lines), a [file attachment](https://help.github.com/articles/file-attachments-on-issues-and-pull-requests/), or put it in a [gist](https://gist.github.com/) and provide link to that gist.
* **If the problem wasn't triggered by a specific action**, describe what you were doing before the problem happened and share more information using the guidelines below.

Provide more context by answering these questions:

* **Can you reproduce the problem**
* **Did the problem start happening recently** (e.g. after updating to a new version of Radium) or was this always a problem?
* If the problem started happening recently, **can you reproduce the problem in an older version of Radium?** What's the most recent version in which the problem doesn't happen?
* **Can you reliably reproduce the issue?** If not, provide details about how often the problem happens and under which conditions it normally happens.
* If the problem is related to working with files (e.g. opening and editing files), **does the problem happen for all files and projects or only some?** Is there anything else special about the files you are using? If the files are not too large, add them to your report.

Include details about your configuration and environment:

* **Which version of Radium are you using?** When Radium starts, it prints the current git commit sha1, please add it to your report alongside the git branch used.
* **What's the name and version of the OS you're using**?
* **What's the name and version of the compiler you're using**?
* **Are you running Radium in a virtual machine?** If so, which VM software are you using and which operating systems and versions are used for the host and the guest?
* **Which [plugins](#radium-applications-and-plugins) do you have installed?** Radium Main App prints the list of loaded plugins when starting.

### Suggesting Enhancements

This section guides you through submitting an enhancement suggestion for Radium, including completely new features and minor improvements to existing functionality. Following these guidelines helps maintainers and the community understand your suggestion :pencil: and find related suggestions :mag_right:.

Before creating enhancement suggestions, please check [this list](#before-submitting-an-enhancement-suggestion) as you might find out that you don't need to create one. When you are creating an enhancement suggestion, please [include as many details as possible](#how-do-i-submit-a-good-enhancement-suggestion). Fill in [the template](ISSUE_TEMPLATE.md), including the steps that you imagine you would take if the feature you're requesting existed.

#### Before Submitting An Enhancement Suggestion

* **Determine which Radium component the enhancement should be suggested in ([Libraries](#radium-libraries) or [Applications and Plugins](#radium-applications-and-plugins) ).**
* **Perform a [cursory search](https://github.com/search?q=+is%3Aissue+user%3Astorm-irit)** to see if the enhancement has already been suggested. If it has, add a comment to the existing issue instead of opening a new one.

#### How Do I Submit A (Good) Enhancement Suggestion?

Enhancement suggestions are tracked as [GitHub issues](https://guides.github.com/features/issues/). After you've determined which repository your enhancement suggestion is related to, create an issue on that repository and provide the following information:

* **Use a clear and descriptive title** for the issue to identify the suggestion.
* **Provide a step-by-step description of the suggested enhancement** in as many details as possible.
* **Provide specific examples to demonstrate the steps**. Include copy/pasteable snippets which you use in those examples, as [Markdown code blocks](https://help.github.com/articles/markdown-basics/#multiple-lines).
* **Describe the current behavior** and **explain which behavior you expected to see instead** and why.
* **Include screenshots and animated GIFs** which help you demonstrate the steps or point out the part of Radium which the suggestion is related to. You can use [this tool](https://www.cockos.com/licecap/) to record GIFs on macOS and Windows, and [this tool](https://github.com/colinkeenan/silentcast) or [this tool](https://github.com/GNOME/byzanz) on Linux.
* **Explain why this enhancement would be useful** to most Radium users.

### Your First Code Contribution

Unsure where to begin contributing to Radium? You can start by looking through these `beginner` and `help-wanted` issues:

* [Beginner issues](https://github.com/STORM-IRIT/Radium-Engine/issues?q=is%3Aissue+is%3Aopen+label%3Abeginner) - issues which should only require a few lines of code, and a test or two.
* [Help wanted issues](https://github.com/STORM-IRIT/Radium-Engine/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22)- issues which should be a bit more involved than `beginner` issues.

### Pull Requests

* Fill in [the required template](PULL_REQUEST_TEMPLATE.md)
* Do not include issue numbers in the PR title
* Include screenshots and animated GIFs in your pull request whenever possible.
* Follow the [coding convention](https://storm-irit.github.io/Radium-Engine/master/develCodingConvention.html)
* Document new code based on the [Documentation Styleguide](#documentation-styleguide)
* Avoid platform-dependent code

## Styleguides

### Git Commit Messages

* Start commit message with a tag to identify main modified components, e.g. [core], [doc], [tests], [engine], [cmake], [github]
* Use the present tense ("Add feature" not "Added feature")
* Use the imperative mood ("Move cursor to..." not "Moves cursor to...")
* Limit the first line to 72 characters or less
* Reference issues and pull requests liberally after the first line
* When only changing documentation, include `[ci skip]` in the commit title
* Consider setting github labels to help sorting

### Documentation Styleguide

* Use [Markdown](https://daringfireball.net/projects/markdown).
Loading