Comments (4)
Currently App.cpp has multiple methods for spawning targets:
spawnParameterizedRandomTarget()
spawnRandomTarget()
spawnTarget()
spawnFlyingTarget()
spawnJumpingTarget()
Of these, only the last 2 are actually called when playMode = true
. We should consider uniting/documenting/removing these to help make things clearer, but I'm not sure which contains our desired approach.
from fpsci.
Overview of these methods and where they came from.
spawnTarget()
: the core function to spawn a target. Was designed when there was 1 target type and was intended to be called everywhere when we wanted to spawn a target.spawnRandomTarget()
: the second function, hooked up to the developer UI which demonstrates how to attach a motion path to a new target. Intended for developer use only.spawnFlyingTarget()
: a fork ofspawnTarget()
renamed to represent theFlyingTarget
object that evolved from our old single target type. I believe this is the one currently used in experiments.spawnJumpingTarget()
: similar to theFlyingTarget
one, but for theJumpingTarget
type that was added later in development.spawnParameterizedRandomTarget()
: I started writing this to provide an interface that matched the experiment configuration that would create a motion path the same way as inspawnRandomTarget()
but matching the types of motion decisions that are found insideFlyingTarget
now. This is not currently used, but if someone decides to move to the pre-computed motion path model, we could replace this function with the correct code.
I don't think anything needs to be done with these right now, but maybe it would be good to open another bug to fix spawnParameterizedRandomTarget()
from fpsci.
@jspjutNV take a look at issue #13 for more specific details on spawnParametrizedRandomTarget()
. I agree that we can probably leave multiple target spawning mechanisms available in code even if they are not called. These functions should be well-documented in source/readme's to make this more obvious to the developer.
from fpsci.
Since there seems to be no strong preference for removing these here, I am going to close this issue. We can continue more specific discussions in issues like #25, #12, and #13.
from fpsci.
Related Issues (20)
- Switch DB from text references to rowID foreign key references
- Performance hitch early in runtime HOT 3
- `allSessionsCompleteFeedback` doesn't work at startup if all sessions are complete HOT 1
- Issue with `'` character in experiment configuration
- Entry-style Question Problems
- Problem with experiment level parameter 'closeOnComplete.'
- Support for stopping motion/blanking display outside of trial/during feedback HOT 1
- Staircase Stimulus HOT 3
- Trial-level Configuration HOT 7
- Log scoring to database HOT 2
- Decals on preview targets HOT 1
- getenv("USERNAME") failures in some cases HOT 2
- Small Targets may not be hittable
- Test `weightByCount` behavior of imbalanced tasks and update documentation
- Setting `audioEnable` to false in startup config causes a crash
- Offscreen target indicator(s)
- Interaction of user menu and questions HOT 1
- Question response changes depending on answer method HOT 1
- Incorrect reference position when `clickToStart` is `false`
- `showReferenceTarget = false` appears to be broken
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fpsci.