GithubHelp home page GithubHelp logo

sosolimited / ofxsoso Goto Github PK

View Code? Open in Web Editor NEW
74.0 25.0 28.0 3.87 MB

openFrameworks addon with scene graph, animations, enhanced text, and more.

Home Page: www.sosolimited.com

License: Other

Makefile 0.91% C++ 97.60% C 1.48%

ofxsoso's Introduction

ofxSoso

Soso OpenFrameworks Addon Copyright (C) 2012-2014 Sosolimited

OpenFrameworks addon that provides a scene graph structure, animations, enhanced text, and more. Look at src header files for descriptions of each object.

As of 12/2014, we will tag ofxSoso releases with names corresponding to openFrameworks releases. We recommend grabbing the oF and ofxSoso release versions for best results.

While we strive to maintain compatibility between the ofxSoso master branch and the oF master branch, only release versions are guaranteed.

Basic instructions

1 - Clone OpenFrameworks
git clone https://github.com/openframeworks/openframeworks.git

2 - Clone ofxSoso in openFrameworks/addons
git clone https://github.com/sosolimited/ofxSoso.git

For versions of openFrameworks 0.8.4 and earlier:

3 - Clone the Sosolimited fork of ofxAVFVideoPlayer into openFrameworks/addons
git clone https://github.com/sosolimited/ofxAVFVideoPlayer.git

4 - Follow kronick’s instructions for adding ofxAVFVideoPlayer to your project

To use release versions of oF and ofxSoso (recommended)

Fetch tags for both openFrameworks and ofxSoso git repos.
git fetch — tags

Checkout matching
git fetch — tags

List tags for openFrameworks and checkout appropriate version.
git tag -l
git checkout 0.8.4

List tags for ofxSoso and checkout appropriate version.
git tag -l
git checkout 0.8.4.0

To use master versions of oF and ofxSoso

No additional work is needed.

Creating a New Example Project

To create a new example project, duplicate the empty example found in ofxSoso/examples. Rename the containing folder after duplication, but NONE of the project files.

To rename the project files within XCode 5 or above, slowly double click on the project's name in the project explorer. Type in your new project's name and when prompted, agree to rename all other relevant files.

Note: You will manually have to create new schemes to match your new project name.

Examples

Most ofxSoso examples run without additional addons.

To run the addonGuiExample, download ofxUI and place in openFrameworks/addons.

Notes

Examples are currently built and tested with Xcode. Visual Studio support is untested.

ofxsoso's People

Contributors

aolivier avatar ericgunther avatar jcnesci avatar jrolimited avatar justinmanor avatar kronick avatar magisterium avatar sansumbrella avatar wadeaaron avatar westhom 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  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  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ofxsoso's Issues

ofxTextObject — tighten up management of fonts

Currently, when setting up fonts, they are newed by the app and then added to the static ofxTextObject::allFonts vector. This should be changed so that the object instantiation is done inside of ofxTextObject.

And then a corresponding delete method should be added for these fonts.
With a giant ALL CAPS warning about the DANGEROUS ramifications of deleting fonts at runtime.

Name for library?

Come up with a name that differentiates the library from the framework(s) it uses.
Maybe have a separate repo/library depending on the underlying framework.

e.g. new name SosoExtensions, with repositories:
ofxSosoExtensions
Cinder-SosoExtensions

or Graph, Funtimes, Something

Or is the name "Soso"? And we could have ofxSoso and Cinder-Soso repositories?

ofxLetterTextObject::setString calls itself

Hi Soso,

When I try to set the string of an ofxLetterTextObject like this:
letterText->setString("test text");

My stack explodes with calls to ofxLetterTextObject::setString and ends with an EXC_BAD_ACCESS error. When I examined the code it seemed as if this function calls itself:

void ofxLetterTextObject::setString(string iString) //JM 080513 { setString(iString); }

ofxObject :: doMessage4f doesn't work with OF_SETCOLOR

To tween color and alpha together, you need two messages: one 3f for color and one 1f for alpha.

Furthermore, setColor with 3 variables will automatically set the alpha of the object to 255.0 - we could add a separate method with 3 vars that uses the current alpha and have the 4 var method take no default

Threaded image loading.

Create example that shows how ofxThreadedImageLoader and ofxImageObject are used together.

Movie memory management

Do some tests that help us understand movie memory management.
As part of this task, learn how to use the memory monitoring tools in XCode and share with the team.
Create tests that create and destroy movies on the fly and watch how memory changes over time.

Come up with tagging scheme for ofxSoso releases

We should maintain tags for stable ofxSoso releases. This releases could correspond to oF releases, with an addition if needed).

E.g. if a version has been tested with oF 0.8.3, we might tag ofxSoso as 0.8.3.0. If we make any changes between oF versions, we can tag ofxSoso as 0.8.3.1, etc.

Verify all destructors are complete

Go through ALL of ofxSoso and look for new and malloc calls. Ensure that there are corresponding delete and free calls in the destructor.

Integrate outstanding branch features

Go through iHR, CSIS, SE branches, in that order, and pull in any changes.
First look at all differences and verify that changes aren't local, in other words, that they should be integrated into the master ofxSoso branch.
After each merge, do a thorough round of testing to make sure nothing has been broken.

Redesign ofImage to use ofTexture

To be able to clean up image pixel memory, we should use an ofTexture in combination with the ofLoadImage() function.

Adding the destroyPixels flag to ofImage violates some promises inherent in the object architecture.

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.