Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Magnum Player #6

Merged
merged 36 commits into from
Oct 7, 2018
Merged

Magnum Player #6

merged 36 commits into from
Oct 7, 2018

Conversation

mosra
Copy link
Owner

@mosra mosra commented Jul 27, 2018

This will become an extended version of the Viewer example with the end goal being an ability to view and play any 3D file you throw at it.

The initial goals, in scope of this PR, are:

  • Basic loading of scene files in scope that the Viewer example did
  • Camera controls better than the Viewer example (panning, depth-aware rotation -- might reuse Add a mouse interaction example. magnum-examples#46)
  • Mention the app in Magnum's doc/utilities.dox
  • Mention the app in in the viewer example docs
  • Screenshot in the docs
  • Loading of animations and playing them back in a loop
    • Ability to pause them
    • Frame stepping
  • Web port
    • Upgrading the default web template
    • DPI awareness
    • Drag&drop instead of having a single hardcoded file
    • Ability to specify aspect ratio of the view Ability to full-size the view
    • Ability to D&D multiple files
  • Screenshot saving postponed
  • Resolve the issue with multiple lights changing alpha desired mask (the gltf alpha example fails)
  • Some default scene for the web view (animated cube at least) postponed
  • Figure out the depth issues postponed
  • Enable MSAA
  • Some better scene info (a modal) .. also cam count etc. postponed

@mosra mosra added this to the 2018.0c milestone Jul 27, 2018
@mosra mosra self-assigned this Jul 27, 2018
@mosra mosra mentioned this pull request Jul 27, 2018
56 tasks
@codecov-io
Copy link

codecov-io commented Jul 27, 2018

Codecov Report

Merging #6 into master will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##           master       #6   +/-   ##
=======================================
  Coverage   18.68%   18.68%           
=======================================
  Files          35       35           
  Lines        1450     1450           
=======================================
  Hits          271      271           
  Misses       1179     1179

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update f27da17...8778b3a. Read the comment docs.

</head>
<body>
<h1>Magnum glTF Player</h1>
<p style="max-width: 640px; text-align: center; margin-left: auto; margin-right: auto;">Drag &amp; drop your <tt>*.glb</tt> (or an <em>embedded</em> <tt>*.gltf</tt>) file into the grey rectange below to play it. Refresh the browser if it gets stuck. I'm not responsible for anything :P</p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"rectange" should be "rectangle" 😉

@mosra mosra force-pushed the player branch 2 times, most recently from 636eacc to 6000b10 Compare September 6, 2018 14:18
@mosra mosra force-pushed the player branch 4 times, most recently from ea95753 to f0c755a Compare September 16, 2018 15:55
@mosra mosra force-pushed the player branch 3 times, most recently from b175dba to b1f561c Compare September 20, 2018 16:23
mosra added 10 commits October 2, 2018 20:28
Looks like static build on Windows was never working properly.
Initial code is a plain copy of the Viewer example.
And if possible, import the initial TRS properties separately. Makes it
better for handling animations.
The file will be specified through drag&drop, so this is not doing
anything at the moment.
@mosra mosra changed the title [WIP] Magnum Player Magnum Player Oct 7, 2018
mosra added 19 commits October 7, 2018 21:19
It needs Ui, which doesn't work on WebGL 1 / ES2.
Well, basically it's recreating it from scratch. Sorry, ugly, verbose
and slow. Needs to be done properly later.
Reused from the Mouse Interaction example.
Again just a copy from the Mouse Interaction example.
But only 2x on HiDPI and allow the users to override that.
Apparently hierarchy is not preserved with browser D&D so if a file in
subdir is not found, we try again using just the filename.
Otherwise the animation time might not get displayed when the
destination random value would be matching animation progress.
@mosra mosra merged commit 8778b3a into master Oct 7, 2018
@mosra mosra deleted the player branch October 7, 2018 19:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging this pull request may close these issues.

3 participants