-
Notifications
You must be signed in to change notification settings - Fork 1
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
Shadertest #1
Open
BKrajancich
wants to merge
36
commits into
StanfordSNR:gl_exploration
Choose a base branch
from
BKrajancich:shadertest
base: gl_exploration
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Shadertest #1
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This now uses 4 textures. Before the trigger, we alternate between a white box in the top left, and a black screen. This is a "clock" of the frames. After the trigger, we do the same, but also draw a white box in the bottom left.
Host PC sends 'g' to the Arduino to signal it to switch LEDs, take a time diff, and send it back over serial.
Calling glFinish at the end of repaint reduces e2e latency by about 1 frame (~4ms).
Rather than have everything in the same loop and thread, this splits off a separate thread for drawing to the display, with two atomic reference. First to a trigger boolean to know when to draw the white square, and second to a drawing delay to be able to report back the value to the main thread.
Gets rid of the newline in the CSV output log.
Just so we can see a frame clock in the swap_interval=0 setting.
Sequence diagram is generated using PlantUML using the web-service: https://www.planttext.com/ The markup for the UML diagram is: ``` @startuml Host->ASG: Switch Eye Command note over ASG: toggle IR LED, t_start = now() Host->Host: poll EyeLink for new samples ASG->ASG: sample = photodiode level note over Host: new EyeLink Sample > DELTA Host->Display: draw white box note over ASG: sample > trigger level, t_end = now() ASG -> Host: t_end - t_start @enduml ```
Takes the results.csv and outputs a histogram, CDF, and boxplots to visualize the distribution of latencies.
When collapsed, it's harder to search for keywords. Given it doesn't take a ton of space, might as well show the information.
Reads gaze data using ZMQ
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Display.cc contains the shader I tried to write which is almost an exact copy of the working C++ code (aided by opencv) in equitest.cc. In trying to narrow down the source of the bug, I'm only playing around with the Y channel of the image and only for a particular head orientation (so I know exactly what it SHOULD look like).