GithubHelp home page GithubHelp logo

ofzach / dayfornightsfpc Goto Github PK

View Code? Open in Web Editor NEW
57.0 57.0 23.0 48.4 MB

day for night project from SFPC

License: MIT License

Makefile 1.85% C++ 75.06% Shell 0.06% C 21.13% GLSL 0.83% HTML 0.32% Processing 0.55% Objective-C 0.19%

dayfornightsfpc's People

Contributors

andyinabox avatar armdz avatar chanderson0 avatar deleuzian avatar firmread avatar flush11 avatar mayakraft avatar mgs avatar motoishmz avatar ofzach avatar poohlaga avatar pyeseul avatar quinkennedy avatar roymacdonald avatar solon avatar taiwaneseportrait avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dayfornightsfpc's Issues

build a system for controlling the params

would be good to have a system for recording parameter change over time (and saving to an xml file) and or controlling params via noise, sin waves or random smooth to values....

this would be a meta level controller maybe at the scene manager level.

clean up and break up sceneManager and typeManager

right now, typeManager is calculating stats on the scene, I think some of this is better done in seperate objects, so it's easy to follow logic, I see this working as a setup:

sceneManager
typeManager (handles param replacement)
sceneStats (calculates paramter changes and / or other info about the scene)
audioManager (turn stats and type info into sound)

making pieces non-static

I was curious about making pieces not static (as requested by the project guidelines). Should we simply be exposing values so they can be controlled (and I assume ultimately animated) by the project organizers? Or should we be including animations in our submissions?

This leads me pretty quickly toward questions about authorship which may become more troublesome with living artists, but it sounds like we have:

  1. original artists, whose work was published years/decades ago
  2. re-coders who are re-creating artwork, possibly editing it to fit easily with current technology and display media, and adding systems for control/animation
  3. curators who are controlling/animating the final result

midi controller?

seems like a midi controller would be an ideal way to alter these parameters. Try hooking up the korg nano controller to this....

fixes for scenes with lines

think about drawing bigger into an fbo and scaling down, ie 2x fbo and lineWidth(3) instead of 1.... as discussed in slack channel.

smoothing should be every frame

smoothing should happen every every frame not on midi event -- (afaik I can see, smoothing is happening here....

https://github.com/ofZach/dayForNightSFPC/blob/master/addons/ofxParameterMidiSync/src/ofxParameterMidiInfo.cpp#L100-L107

I can't find an easy way to duplicate a parameterGroup (having a kind of shadow param group might be one way to do this, one gets update from midi, the other catches up to the unsmooth value)....

one simple solution (but requires editing projects) is to add variables that track, and add a function called smooth to baseScene, ie for yosukeJhonWhitneyMtrix:

// ofParameter param;
ofParameter numOfGroup;
ofParameter numOfBall;
ofParameter radius;
ofParameter speed;
ofParameter ballRadius;

//----------------------------------------- if it can be smoothed, smooth it
ofParameter<float> radiusSmooth;
ofParameter<float> speedSmooth;
ofParameter<float> ballRadiusSmooth;

void smooth(){
    radiusSmooth = SMOOTH_AMOUNT * radiusSmooth + (1-SMOOTH_AMOUNT) * radius;
    speedSmooth = SMOOTH_AMOUNT * speedSmooth + (1-SMOOTH_AMOUNT) * radius;
    ballRadiusSmooth = SMOOTH_AMOUNT * ballRadiusSmooth + (1-SMOOTH_AMOUNT) * radius;
}
//-----------------------------------------

SMOOTH_AMOUNT can be defined in baseScene or appConstants (like 0.95, etc).

you will need to call smooth in scene manager before update....

can't seem to find a way to do this more automatically.... at least the params are pretty clear per project and it's just the floats to smooth.
I hope this helps!
zach

move scene data a level deeper

as we start to have settings files, fonts, sounds, etc, it's a bit messy to have scene folders at the root level of data. good to make a folder called scenes, and then put these folders in scenes. This would require changing every scene's "load(...)" if we do this but I think for keeping things clean it will help.

potential typography changes

a) type could be height centered, and recenter as new lines get typed in.... (small ones end up quite high). We could do this by monitoring the bounding box of the type as it's drawn and (smoothly) recentering based on that.

b) on parameter change, it would be good if the lines that do have parameters up stay mid-bright, but ones that don't fade out even more so your eye can focus on the given line...

c) we could try fading out everything but changing parameters alot or completely, so you just see numbers changing....

d) blinking cursor might emphasize the typing a bit more (blinking when typing slow, solid when typing is fast.. disappears when typing is done

ie, the line at the end of the type:

screen shot 2015-12-17 at 4 45 18 am

multiple definition of 'main'

I assume this is only happening in Linux since it has not been fixed yet, but I'm getting a "multiple definition" errors when I make. looks like I'm getting them from ofxTween/example/map_example_src

I'm not sure how to remedy these on Linux, should I be able to do it with the command-line project generator? Or editing some project file?

add smoothing paramter for midi control

the midi control of params is great, it feels like it needs a bit of smoothing since it's so sensative, smoothing can be part of the overall control panel

Some scenes crash when type animation is on

When TYPE_ANIMATION is defined, these scenes cause the app to crash once they load:

  • submotionOrchestraScene
  • veraMolnarTrapezium
  • veraMolnarLines68

Example error message from the exception, triggered inside submotionOrchestraScene::draw() ...

libc++abi.dylib: terminating with uncaught exception of type std::out_of_range: vector
(lldb) 

As a quick workaround, I've disabled the above scenes when type animation is on.

please clarify variable name

@sarahgp we in houston were wondering whether the weeArc variable in your sketch means "wee" like small or "wee" like "weeee i'm on a roller coaster". please let us know ๐Ÿ‘ป

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.