Khan / Khan/live-editor

Something is undefined for some devices when using 3d with the processingjs library

Open
#523 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

browserbug bug pjs
Dominant language
JavaScript
Stars
776
Forks
180
PR merge metrics
No merged PRs in 30d

Description

When I made this: https://www.khanacademy.org/computer-programming/3d-maze-game/5316019273465856 lots of people told me they were getting an error. E.g. "Why can't I play? It just says undefined!"
At first I assumed the webgl stuff was complaining that they didn't have a good enough gpu. However I tested the maze game out on a variety of devices, and found one that threw the error, then wrote this: https://www.khanacademy.org/computer-programming/my-first-threejs-app/5606329430966272 which also uses webgl but through a different library. And yet the three.js app works on the device that won't play the maze game, sooo.. that sort of poked a hole in my first theory. So maybe the error is fixable?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the "undefined" error from the linked 3d maze game on the affected device, then compare it with the linked three.js example, which works there. Trace the live editor's ProcessingJS/WebGL path; the issue names no repository files or tests. Done means the maze game works on the affected device without the undefined error.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, three.js
Domain
computer-graphics, frontend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.