Skip to content

Commit

Permalink
added 007 changes
Browse files Browse the repository at this point in the history
  • Loading branch information
kylemcdonald committed Dec 20, 2011
1 parent ff78a53 commit dffb9a1
Showing 1 changed file with 130 additions and 42 deletions.
172 changes: 130 additions & 42 deletions changes.txt
Original file line number Diff line number Diff line change
Expand Up @@ -20,16 +20,104 @@ key:

---------------------------------------------------------------

This is the biggest release yet. There are a ton of changes. The 0062 core was 624KB over 49 files. The 007 core is 1.12MB, 148 files. In other words, the core of OF has basically doubled.

+ multiple versions of ofxShader, ofxVbo and ofxFbo have been brought into the core as ofShader, ofVbo, and ofFbo
+ besides ofDirectory, ofFile and ofBuffer have also been added for working with the filesystem
+ android support
+ ofPixels and ofImage have getColor() which returns an ofColor, and setColor(x,y,ofColor)
+ cross-platform file dialog and alert dialog, ofSystemAlertDialog(), ofSystemLoadDialog(), ofSystemSaveDialog()
+ ofSetOrientation() allows you to rotate the entire OF drawing space
+ working towards a sound synthesis addon, ofxSynth
+ ofColor has constants for basic colors, like ofColor::magenta
+ ofxAssimpModelLoader for loading a huge variety of 3d formats
+ ofEnableBlendMode() supports additive, subtractive, alpha, etc. blending
+ ofxThreadedImageLoader addon
+ ofMesh, ofVbo and ofVboMesh provide a clean interface for drawing, and for gpu-accelerated drawing
+ ofNode is a new 3d node class with position and orientation that can be manipulated with methods like truck() and tilt()
+ ofCamera extends ofNode, is a new camera class for representing a camera position, orientation, and other parameters
+ ofEasyCam wraps ofCamera with automatic mouse binding that resembles processing's PeasyCam
+ ofLight also extends ofNode, provides a simple interface for placing and describing opengl lighting
+ ofPath and ofPolyline wraps all the 2d drawing functionality previously supported by OF, and adds more. ofPolyline has some new advanced methods like getResampledBySpacing(), getClosestPoint(), simplify()
+ ofColor finally adds HSB support. ofColor is always an RGB color, but you can get and set its hue, saturation and lightness via getHue()/setHue() etc. it also distinguishes lightness (value) from brightness. to create a color using HSB values, use ofColor::fromHsb(h,s,b,a). to set from hex, use ofColor::fromHex(hex)
+ ofBox and ofSphere draw the respective 3d shapes
+ a ton of conversion methods have been added: ofToHex, ofToBinary, ofToString, ofHexToInt, ofHexToFloat, etc. they're all inside ofUtils.h
+ new logging system with support for << operator, logging per module, logging to file and logging channels which makes it easier to redirect the logging output
+ functions and classes to load online resources to memory or disk using http both synchronous and asynchronously
+ ofImage directly supports loading images from the web
+ ofxCvHaarFinder is brought into the core ofxOpenCv addon
+ drag and drop support in applications (except in linux)
+ ofPtr for shared pointers, is actually std::tr1::shared_ptr and will be std::shared_ptr when c++11 is supported
/ ofVideoGrabber, ofVideoPlayer, ofSoundPlayer and ofSoundStream use "swappable apis". so does rendering, which means you can use cairo and output to PDFs or SVG for 2d and 3d.
/ ofDrawBitmapString() has been massively refactored to support all the different 3d drawing cases you can imagine via ofSetDrawBitmapMode()
/ ofLog() now supports streaming, for example: ofLogVerbose() << "some message";
/ better iPhone video and camera support
/ ofPixels is now a fully-formed class that is used by a variety of classes
/ better gstreamer support on linux
/ new fps counting technique that works a little better across platforms
/ slowly transitioning away from fmod toward openal for sound support
/ the core addons ofxVectorMath, ofxThread, and ofxDirList have been turned into ofVectorMath, ofThread and ofDirectory
/ ofSetColor(int) is now interpreted as a grayscale value, ofSetHexColor(int) if you want to use hex values
/ ofSoundStream has been converted to an object oriented api, and now is possible to open several devices and choose which device you want to use.
/ ofTrueTypeFont, now generates a texture atlas when loading a font instead of a texture per char. It also has bind()/unbind() functions that allow to bind the texture only once to render several texts, making font rendering much faster.
/ ofTrueTypeFont getShapes uses ofPath
/ new ofTessellator class used internally in OF by ofPath and ofBegin/EndShape bassed on the tess2 library (with some modifications so it also works on openGL ES) which is faster and has a cleaner api than the previous one from GLU
/ openCV is updated to 2.2
/ ofColor, ofPixels and ofImage are now templated classes with support for 8bit, 16bit and 32bit and easy conversion between them using the = operator
/ ofApp*Window have been refactored so now all the common functionality is in ofEvents which makes easier to create new windows and mantain the current ones
/ easier registering of core events with the new ofRegister*Events functions
/ all the classes with opengl resources have shallow copy + shared pointer semantics so textureA = textureB makes textureB point to the same texture in the graphics card as textureA, and the texture is released when the last copy is destroyed
/ all swappable api objects (ofVideoGrabber, ofvideoPlayer, ofSoundPlayer and ofSoundStream) have shallow copy + shared pointer semantics too
/ all memory structures (ofPixels, ofImage, ofBuffer, ofMesh...) have deep copy semantics, so pixelsA = pixelsB makes b a full new copy of pixelsA
- Linux has no dependencies with any not free library (FMOD mainly)

---------------------------------------------------------------
.oooo. .oooo. .ooo .oooo.
d8P'`Y8b d8P'`Y8b .88' .dP""Y88b
888 888 888 888 d88' ]8P'
888 888 888 888 d888P"Ybo. .d8P'
888 888 888 888 Y88[ ]88 .dP'
`88b d88' `88b d88' `Y88 88P .oP .o
`Y8bd8P' `Y8bd8P' `88bod8' 8888888888

OF 0062 Pre-release, changelog:

key:
+ = added
- = subtracted
/ = modified

---------------------------------------------------------------

This is mostly minor changes, as it's a maintenance release with small bug fixes a few extra features and critical updates for Visual Studio 2010, Linux and iPhone developers.

/ altered framerate calculation
/ altered data path, adding ofSetDataPathRoot for OSX
/ ofSerial - bug fixes, including EAGAIN
+ added touchEvents
/ ofDrawBitMapString - added openglES compatible mode
+ ofGraphics - added universal functions to help control textures, such as "ofEnableNormalizedTexCoords()"
+ ofImage - setCompression code via SoSoLimited
+ ofTexture - added compression options, via SoSoLimited
/ ofSoundStream - bug fixes for audio clearning
/ ofConstants - switch some includes, for example, from <stdio.h> to <cstdio>
+ ofMath - added some functions to help with angle math, such as ofLerpDegrees, and ofAngleDifferenceDegrees
+ ofMath - added some polygon / polyline / line methods, such as ofInsidePoly and ofLineSegmentIntersection
+ ofMath - added curve functions, ofBezierPoint, ofBezierTangent, ofCurvePoint, ofCurveTangent
+ ofTypes - added functionality to ofRectangle, added [] options for ofColor
- ofTypes - removed getPixels() from ofBaseVideo, as is was unnecessary
+ ofUtils - new ofSetDataPathRoot code for OSX, changes to ofToDataPath


---------------------------------------------------------------
::::::: ::::::: :::::::: :::
:+: :+: :+: :+: :+: :+: :+:+:
+:+ +:+ +:+ +:+ +:+ +:+
+#+ +:+ +#+ +:+ +#++:++#+ +#+
+#+ +#+ +#+ +#+ +#+ +#+ +#+
#+# #+# #+# #+# #+# #+# #+# #+#
####### ### ####### ######## #######
::::::: ::::::: :::::::: :::
:+: :+: :+: :+: :+: :+: :+:+:
+:+ +:+ +:+ +:+ +:+ +:+
+#+ +:+ +#+ +:+ +#++:++#+ +#+
+#+ +#+ +#+ +#+ +#+ +#+ +#+
#+# #+# #+# #+# #+# #+# #+#
####### ####### ######## #######

OF 0061 Pre-release, changelog:

key:
Expand Down Expand Up @@ -193,13 +281,13 @@ ofxNetwork:

---------------------------------------------------------------

.oooo. .oooo. .ooo
d8P'`Y8b d8P'`Y8b .88'
888 888 888 888 d88'
888 888 888 888 d888P"Ybo.
888 888 888 888 Y88[ ]88
`88b d88' .o. `88b d88' `Y88 88P
`Y8bd8P' Y8P `Y8bd8P' `88bod8'
.oooo. .oooo. .ooo
d8P'`Y8b d8P'`Y8b .88'
888 888 888 888 d88'
888 888 888 888 d888P"Ybo.
888 888 888 888 Y88[ ]88
`88b d88' `88b d88' `Y88 88P
`Y8bd8P' `Y8bd8P' `88bod8'

OF 006 Pre-release, changelog:

Expand Down Expand Up @@ -350,13 +438,13 @@ http://www.openframeworks/forum/viewtopic.php?p=7221#7221

---------------------------------------------------------------

.oooo. .oooo. oooooooo
d8P'`Y8b d8P'`Y8b dP"""""""
888 888 888 888 d88888b.
888 888 888 888 `Y88b
888 888 888 888 ]88
`88b d88' .o. `88b d88' o. .88P
`Y8bd8P' Y8P `Y8bd8P' `8bd88P'
.oooo. .oooo. oooooooo
d8P'`Y8b d8P'`Y8b dP"""""""
888 888 888 888 d88888b.
888 888 888 888 `Y88b
888 888 888 888 ]88
`88b d88' `88b d88' o. .88P
`Y8bd8P' `Y8bd8P' `8bd88P'

OF 005 Pre-release, changelog:

Expand Down Expand Up @@ -433,13 +521,13 @@ video
/ ofVideoPlayer - fix for bHavePixelsChanged on QT (isFrameNew returning true)

---------------------------------------------------------------
.oooo. .oooo. .o
d8P'`Y8b d8P'`Y8b .d88
888 888 888 888 .d'888
888 888 888 888 .d' 888
888 888 888 888 88ooo888oo
`88b d88' .o. `88b d88' 888
`Y8bd8P' Y8P `Y8bd8P' o888o
.oooo. .oooo. .o
d8P'`Y8b d8P'`Y8b .d88
888 888 888 888 .d'888
888 888 888 888 .d' 888
888 888 888 888 88ooo888oo
`88b d88' `88b d88' 888
`Y8bd8P' `Y8bd8P' o888o

OF 004 Pre-release, changelog:

Expand Down Expand Up @@ -495,13 +583,13 @@ other changes:

---------------------------------------------------------------

.oooo. .oooo. .oooo.
d8P'`Y8b d8P'`Y8b .dP""Y88b
888 888 888 888 ]8P'
888 888 888 888 <88b.
888 888 888 888 `88b.
`88b d88' .o. `88b d88' o. .88P
`Y8bd8P' Y8P `Y8bd8P' `8bd88P'
.oooo. .oooo. .oooo.
d8P'`Y8b d8P'`Y8b .dP""Y88b
888 888 888 888 ]8P'
888 888 888 888 <88b.
888 888 888 888 `88b.
`88b d88' `88b d88' o. .88P
`Y8bd8P' `Y8bd8P' `8bd88P'

OF 003 Pre-release, changelog:

Expand Down Expand Up @@ -553,13 +641,13 @@ other changes:

---------------------------------------------------------------

.oooo. .oooo. .oooo.
d8P'`Y8b d8P'`Y8b .dP""Y88b
888 888 888 888 ]8P'
888 888 888 888 .d8P'
888 888 888 888 .dP'
`88b d88' .o. `88b d88' .oP .o
`Y8bd8P' Y8P `Y8bd8P' 8888888888
.oooo. .oooo. .oooo.
d8P'`Y8b d8P'`Y8b .dP""Y88b
888 888 888 888 ]8P'
888 888 888 888 .d8P'
888 888 888 888 .dP'
`88b d88' `88b d88' .oP .o
`Y8bd8P' `Y8bd8P' 8888888888

OF 002 Pre-release, changelog:

Expand Down

0 comments on commit dffb9a1

Please sign in to comment.