You are on page 1of 25

--------------------------------------------------------------.oooo. .oooo. ooooooooo .oooo. d8P'`Y8b d8P'`Y8b d"""""""8' .dP""Y88b 888 888 888 888 .

8' ]8P' 888 888 888 888 .8' <88b. 888 888 888 888 .8' `88b. `88b d88' `88b d88' .8' o. .88P `Y8bd8P' `Y8bd8P' .8' `8bd88P' OF 0073 changelog: change key: + added - removed / modified --------------------------------------------------------------/ ofGetElapsedTimef() no longer wraps after ~71 minutes, which was a bug introdu ced with 0072. ofGetElapsedTimeMicros() previously also wrapped after ~71 minute s, and this has been fixed as well. / fixed broken pause and other fixes in ofVideoPlayer on OSX / fixes to AndroidVideoGrabber / Android empty example inherits from ofxAndroidApp + adds android methods + auto register android touch events + ofMultMatrix(), ofLoadMatrix(), ofLoadIdentityMatrix() --------------------------------------------------------------.oooo. d8P'`Y8b 888 888 888 888 888 888 `88b d88' `Y8bd8P' OF 0072 changelog: change key: + added - removed / modified ------------------------------------------------------------DEPRECATIONS & REMOVALS ======================== ## Deprecations: (will be removed in a future release, replacements noted after --->) / / / / ofVec*f: squareLength() ---> lengthSquared() ofVideoGrabber: grabFrame() ---> update() ofVideoPlayer: idleMovie() ---> update() ofPolyline: addVertexes() ---> addVertices() .oooo. ooooooooo .oooo. d8P'`Y8b d"""""""8' .dP""Y88b 888 888 .8' ]8P' 888 888 .8' .d8P' 888 888 .8' .dP' `88b d88' .8' .oP .o `Y8bd8P' .8' 8888888888

ofGraphics: / ofVertexes() ---> ofVertices() / ofCurveVertexes() ---> ofCurveVertices() ofQTKitPlayer:

/ bind() ---> getTexture()->bind() / unbind() ---> getTexture()->unbind() ofAppiPhoneWindow: / enableRetinaSupport() ---> enableRetina() / isRetinaSupported() ---> isRetinaSupportedOnDevice() / isDepthEnabled() ---> isDepthBufferEnabled() ## Removals: (have been deprecated previously, their functionality has been migr ated to the OF core) - ofxDirList ---> ofFileUtils: ofFile, ofFilePath, ofDirectory, etc - ofxThread ---> ofThread - ofxVectorMath ---> ofVectorMath: ofVec2f, ofVec3f, etc CORE ==== / fixed lots of compilation warnings in the core library ## 3d / ofMaterial: fixed incorrect storing / restoring of shininess ofEasyCam: + enable/disable/get now uses middle mouse button for translation, activ ated by default + added set/get translation key, pressing this key and dragging with the left mouse button will translate the camera instead of rotating - removed mouseEvent listener methods / underlying math rewritten for readability, efficiency, & reliability / fixed strange or erratic behaviour and blocked rotation / setTarget now behaves as expected / fixed camera movement before dragging / updated rotation interactions to rotate over all three axes, rotation over the X or Y axes is achieved by starting to drag inside a circle with it's diameter set to the minimum between the viewport width and height, when the drag starts outside this circl e Z axis rotation is achieved ofMesh: / convert all index types from int to ofIndexType / fixes to multiLightExample ofNode: + missing implementation for rotateAround() + added getGlobalScale() ## App / ofGetElapsedTimeMillis() now returns an unsigned long ## Communication + added ofSerial speed: 230400 ## Events / ofNotifyMousePressed() wasn't updating currentMouseX and currentMouseY / ofEvents: const parameters in events can be notifed by passing a value dir ectly

## Graphics + added ofClear(ofColor c) + added ofRectRounded functions, bring on the lawsuit APPL ... / fixed anti-aliasing issue when auto background set to false / ofFloatImage and ofShortImage display correctly again / ofDrawBitmapString(): default style changed to be backwards compatible wit h pre-007 / ofDrawBitmapString(): fixed drawing in simple mode, and drawing with alpha enabled / ofDrawBitmapString(): fixed rendering to FBOs (i.e. upside-down inside FBO ) / ofGstUtils: several fixes for network streams and performance ofCairoRenderer: + added support for rendering to a png / now sets current style every frame since Cairo wasn't preserving the s tyle / now gueses type from file extension and renders to memory / fixed broken Z-rotation when called with ofRotate(X,0,0,1) / use ofSaveImage() to save image buffers instead of Cairo png ofImage: / saveImage() now flattens color channels (4 to 3) when saving a jpeg / fixed memcpy bug in getBmpFromPixels() / update() rewritten to use ofGetGlInternalFormat so ofImage can handle short and float images ofPolyline: + added fromRectangle() / getBoundingBox() is now const ofTrueTypeFont: / make font rendering whitespace and printable character width the same ## Math / ofPoint & ofVec*f: fixed myVec = float only assigning to the x value, now prints an error message to help track down bugs, you should now use my Vec.set(float) instead to set all three values to the same float value / all instances of functions named *Vertexes have been changed to *Vertices / ofVec3f: removed default argument for z component in 3 value constructor ## OpenGL - removed unused ofCheckGLTypesEqual(int, int) / ofLight::customDraw(): fixed bug ofFbo: / fixed FBO error when trying to retain depth texture / cleanup and bugfixes for both iOS and desktop / fixed bug where ofFbo was broken on systems that did not support MSAA ofTexture: + added setUseExternalTextureID for setting external Texture ID which wi ll not be released by ofTexture, was causing crashes for people trying to use external texture ids / can now read to pixels from depth buffers / added depth texture to image type support for OpenGL ES ofVboMesh

+ added enabled/disable of flags for colors, texCoords, indices, & norma ls / fixed problem when changing size to 0 / fixed clearing of vbo buffers when mesh is reallocated to 0 ## Sound / setPan() now works consistently (range is -1..1) over all objects that use sound / ofOpenALSoundPlayer: fix for stopThread with no arguments / ofSoundPlayer::loadSound() now properly returns a bool when it succeeds or fails ## Types / ofPixels: fixes to channel count in OF_PIXELS_RGBA ofRectangle: + added getters and setters for x , y, width, & height + added methods for working with lines, translation, & scaling + edge x/y locations can now be called by their "anchor" name (ofAlignHo rz and ofAlignVert) using getHorzAnchor() and getVertAnchor() + calling standardize() on a given ofRectangle will adjust the x / y pos ition to make both the width / height to greater than zero + added a + operator, which is equivalent to calling translate(ofPoint . ..) - removed getAsPolyline() and growToInclude() / x & y vars are now references to an underlying ofPoint, you can get a reference to the underlying ofPoint via getPositionRef() ofColor: / fixes to reading from byte streams / fixes to setHsb for ofFloatColor and ofShortColor ## Utils + added deprecation mechanism: compile-time warnings tell you if you are usi ng legacy/old functions, alternatives are mentioned where appropriate + ofSystemTextDialog + ofToString: added float formatting args + ofThread: added getter for poco thread / ofLog messages are significantly shorter / ofToDataPath() bugfixes / ofToString(value,int,int,char) now unambiguous / ofToHex(): fixed incorrect return value for non-ascii input / ofGetModifierPressed(): fixes to getting whether modifier keys are pressed / ofGetElapsedTimeMillis(): fixes to time counter functions, and increased a ccuracy / ofFileUtils: fixed comparison operators / ofThread: stopThread() fix / ofBuffer: set and operator= from string + append method / ofLaunchBrowser: now accepts https URLs / ofPtr: extended facade to allow for dynamic_pointer_cast ofConstants: + added ofAlignVert & ofAlignHorz enums based on Qt, could be combined into a single bit-wise combined alignment flag + added ofAspectRatioMode enum, describes how an aspect ratio is preserv ed (or not) during scaling operations,

can be combined with ofAlignVert and ofAlignHorz to describe a rectan gular scaling operation + added ofScaleMode enum, represents a set of common scaling modes where each scaling mode can also be described by a specific combination of ofAspectRatioMode, an ofAlignV ert, and an ofAlignHorz making ofScaleMode makes common scaling operations less verbose ofURLFileLoader: / now catches all exceptions / fixed issue with ofRemoveRequest if ofURLFileLoader currently loading the request ## Video / solved dropped frame bug on setFrame / fixed createMovieFromURL / fixed problem when reloading movies / fixed setTexture(true) (allocates texture if it wasn't already allocated) / fixes to GStreamer streaming and initialization, squash unnecessary re-ini t on stop ofVideoPlayer: + added functionality to load video from a URL + added movie path variable and getter / setVolume changed to take a float 0..1 with a warning message on out-o f-range / updated to handle pixel formats more optimally ofVideoGrabber: / switched to 24RGB pixel format to avoid manual conversion / now allows up to 24 cameras on Windows PLATFORM SPECIFIC ================= ## Android + ofSystemTextAlert: added android version + ofSoundPlayer: implemented multiplay and streaming / Makefile now includes ofVideoPlayer / Eclipse project: update android target to use Android toolchain / updated setPixelFormat and getPixelFormat / updated OpenCV library / no more modal dialogs, were causing problems with gui thread / ofSoundPlayer: resource usage and bug fixes / updates Hardware Key handling to use characters instead of keycodes ofAndroidLib: + added support for touchCancelled and swipe / updated to the latest Android SDK R20 and Android-NDK-R8B / updated minimum SDK level to 8 or Android 2.2 / multitouch now supports 10+ pointers ofxAndroid: + added listAlert + added network alerts + added ofxAndroidEvents / no longer crashes on 4.0.4 and 4.1.1 devices / updates to fix paths to external storage / ofThread now registers pthreads through JNI

ofAppAndroidWindow: / no longer crashes when returning from onPause() / fix for non-threaded mouse events / java side is already checking resume is not called on start ## Mac OS X / OpenFrameworks now works "out of the box" on 10.7+ by using QTKit for vide o grabbing & playback, / If compiling with the 10.6 SDK, the old Quicktime framework based players and grabbers are still included ofVideoPlayer: / uses Core Video and QTKit internally + added support for getCurrentFrame() and setFrame() on videos with nonstatic framerates + added support for more codecs through QTKit framework + added support for direct-to-texture video rendering + added option to enabled asynchronous seeking for non-blocking calls to setFrame() ofVideoGrabber: / uses Core Video and QTKit internally + added ability to record videos to disk + added support supports a wider range of video inputs, for example HDV over FireWire - removed video setting dialog for 10.7+ ## iOS + fixed/added antialiasing for iOS + added ofxiPhoneGetGLParentView() for accessing the GLView parent UIView, this is now where other UIViews should be added to (was ofxiPhoneGetUIWin dow()), also fixes a bug where the native video player was not displaying correct ly on first load + added EAGLViewDelegate for getting state updates from EAGLView, also added a destroy method + added ofxiOSExtensions giving access to functions for reloading OpenGL tex tures, called when a ofxiOSEAGLView is destroyed and another fresh ofxiOSEAGLVie w is created + added ofxiPhoneLaunchBrowser(string url) to ofxiPhoneExtras - removed ofFmodSoundPlayer files from iOS+OF project which were causing com pile issues with nightly builds - removed ofxiPhoneSoundPlayer.mm, was never used / iOS Xcode project valid architecture is now set to armv6 armv7 by default / iOS+OFLib deployment target has been set to 4.0, the base supported versio n of iOS by OF / fixed buggy compiler error with iOS events / fixed create_package to not delete iOS libraries / ofiPhoneVideoPlayer and AVFoundationVideoPlayer rewritten / cleanedup / fixed AVPlayerItem crash on unloading video / glViewController is now set as the window's rootViewController, this is a much nicer implementation than adding the glViewController's vie w to the window / fixed ofxiPhoneSendGLViewToFront() and ofxiPhoneSendGLViewToBack() to alwa ys work with the GLView superview / GLView is now brought to front using ofxiPhoneSendGLViewToFront() / ofImage::grabScreen fixed for iOS / ofxiPhoneScreenGrab: updated for retina display / isRetinaSupported() made more reliable / fixed accelerometer readings for devices with default landscape orientatio n (i.e. tablets)

/ EAGLView, ES1Renderer, and ES2Renderer now do not have any OF dependencies , can now be used to setup openGL ES without OF (if not required) / ofOpenALSoundPlayer: safety fixes for iOS ofAppiPhoneWindow: + enabling retina was ambiguous, method names are now more concise + added methods for disabling retina, depth, & anti-aliasing / isRetinaSupported() made more reliable / now accesses window position, size, and screen size from the ofxiOSEAG LView ofxiOSEAGLView + ofxiOSEAGLView is the OF specific extension of EAGLView, most of the logic from the ofxiPhoneViewController has been move into here, it is now possible to create a ofxIOSEAGLView without the need for a ofxiPhoneViewController container + only accepts ofxiPhoneApp instead of ofBaseApp, this is more strict an d safe + moved window size and position code from ofAppiPhoneWindow into ofxiOS EAGLView, makes more sense for ofxiOSEAGLView to return these values and only r ecalculate them when layoutSubviews() is called on a ofxiOSEAGLView resize ofxiPhoneViewController: + now adds itself as a delegate when creating a glView, this is handy to get glView callbacks when extending in another class / completely refactored to only create and set up the glView, now rotate s the glView to the device orientation ## Linux + added new method for setting vsync - removed unused FMOD scripts / ofOpenALSoundPlayer: bugfixes for Linux ## Windows + added readme for Visual Studio / added missing elif statement for MiniGW, changed the compiler from 4.4.3 t o 4.6 / ofSystemAlertBoxDialog: fixed for VS2010 and CB Windows / updated to Fmod 4.4 / ofSystemUtils: fix windows dialog / ofUtils: fixed VS2010 compilation and dynamic shared pointer casting CORE ADDONS ============ - removed ofAddons.h / ofxOsc: install.xml brought up to date / ofxOpenCV: partially fixed OpenCV runtime errors with MiniGW - needs newe r GCC for proper fix / ofxXmlSettings::setValue() fixed truncated floating point arguments bug in troduced in 007 / ofxXmlSettings: increased precision when saving double values PROJECT GENERATOR ==================

/ updated project generator template to include QTKit and CoreVideo framewor ks on Mac OS X EXAMPLES ========= + added rectangleAlignmentAndScaling example: demonstrates all of the new of Rectangle alignment and scaling features / videoGrabber example: updated with comments about legacy video settings an d info on how to enable alpha movies / asciiVideo example: cleaned-up and clarified, now uses OF convenience func tions for lightness and charToString conversion / shader example: fixed for ATI cards / fixed billboard and pointsAsTextures examples / updated easyCam example, now explains the reimplementation of ofEasyCam in greater detail ## Mac + added osxVideoRecorder example demonstrating recording videos to disk on M ac OS X using the ofQTKitGrabber + added osxHighPerformanceVideoPlayer demonstrating accelerated playback of HD videos on OS X using the ofQTKitPlayer ## iOS + moviePlayer example: added video player volume / Mapkit example fixed ## Android + added OpenCVFace face tracking example / soundPlayer example: updated to show multiplay on Android / touch example: bug fixes / image example: updated to fix path to image in loadImage(FILE) --------------------------------------------------------------.oooo. .oooo. ooooooooo .o d8P'`Y8b d8P'`Y8b d"""""""8' o888 888 888 888 888 .8' 888 888 888 888 888 .8' 888 888 888 888 888 .8' 888 `88b d88' `88b d88' .8' 888 `Y8bd8P' `Y8bd8P' .8' o888o OF 0071, changelog: key: + = added - = subtracted / = modified --------------------------------------------------------------The main focus for 0071 was to add new examples to better show the features adde d in 007. 0071 is mainly an 'examples + bug fixes' release, with some additional, much nee ded, updating to the mobile releases ( iOS and Android ). Critical changes ( might need to update your projects to fix ) * ofEvents -> ofEvents() singleton - this means that projects which register cal ls using "ofEvents." will need to replace these with "ofEvents()." (note the par entheses).

* OF Examples now are found in the "examples/" folder in the root of the OF fold er. The "apps/" is still included but is kept empty as a place to put your OF ap ps and experiments. * Because of the project generator (see below) some addons have been standardize d, and we've added "addons.make" to each project file that uses addons. Prior t o this release, addons.make was only used on linux / android platforms. As we d evelop the project generator, we'll work to document these changes. * audioRequested and audioReceived on the ofBaseApp/testApp are now called audio Out and audioIn Project generator A significant amount of the work which went into 0071 was in the development of a Project Generator. The Project Generator can make project files for all the OF platforms and it was critical to have this in order to increase the number of e xamples we could include with the release. The Project Generator is also able to add addons to existing projects, making the task of adding addons much faster t han the current manual approach. Going forward, the Project Generator will be in cluded with the new releases and be a key tool for generating, modifying and upd ating your OF projects. Currently, the Project Generator is in our github reposi tory (https://github.com/openframeworks/openFrameworks) in apps/devApps/. core: + loads of new examples! 96 examples now come with the desktop releases of OF. F or a full list see: https://gist.github.com/2836913 platform specific: + android support for front camera + android support for ofSoundPlayer + new iOS examples showing how to mix OF with Native Apps / android compatibility with ndk r7+ and lots of bugfixes / loads of iOS bugfixes - including retina issue, FBO issues, native GUI fixes, video fixes. / XCode fix to avoid constant rebuild of projects / Some MacOS 10.7 fixes ( ofShowCursor / HideCursor ) / Better compatiblity with XCode 4 / linux: createProjects.py script dropped in favor of command line version of th e projectGenerator utils: + implemented getUserHomeDir() for Windows / ofSystemSaveFileDialog fix for linux / ofFile and ofDirectory fixes for overwrite failing. / ofThread now uses Poco::Thread / bugfix for ofFile::copyFromTo / makefiles now are modular + ensure compatibility with future versions addons: + OSC allows multiple binds to the same port and support for multicast / unicast / Loads of ofxOpenCV fixes to prevent crashing when images are not allocated or the wrong size library changes: / OpenCv library in the ofxOpenCv addon updated to version 2.3.1 / Poco library updated to version 1.4.3 3d: + ofDrawGrid() for showing an multi-axis xyz grid, ofDrawGridPlane() for a singl e plane + ofDrawArrow() for lines with arrow heads (using ofCone()) + ofCone() for draw cone primitives

+ 3D versions of ofCurve(), ofBezier(), ofVertex() and ofBezierVertex(). + ofMesh now allows you to explicitly enable/disable colors/textures/normals bef ore drawing using ofMesh::[enable/disable][Colors/Textures/Normals]() + ofxAssimpModelLoader utility methods / faster ofSphere() without GLUT dependancies. math: + ofQuaternion::normalize() + ofTexture/ofImage::drawSubsection() for drawing portions of images + ofBackgroundGradient() for gradient app backgrounds, with OF_GRADIENT_CIRCULAR , OF_GRADIENT_LINEAR, OF_GRADIENT_BAR + ofPolyline::getCentroid2D() and ofPolyline::getArea() / fix mismatch between * and *= operators for ofMatrix3x3. Implemented separate hadamard/schur product ofMatrix3x3::entrywiseTimes() / modify ofMatrix4x4::getRotate() method to operate on a scale-invariant version of the matrix Graphics: / ofColor fixes for HSB color wrapping / ofPixels optimizations for swapRGB() and mirror() and rotate() / ofPolyline::getSmoothed() works with open and closed lines app: + ofAppGlutWindow::setDoubleBuffering() gets rid of flickering when drawing with out clearing. use this in your main.cpp instead of just saying ofSetBackgroundAu to(false) openGL: + ofFbo added option to have the depth/stencil buffer as a texture / ofFbo lots of fixes for iOS and POT textures communication: / ofSerial bugfixes sound: + ofSoundStream allow for different input and output devices. For a full list of commits for 0071 see: https://gist.github.com/2836647 --------------------------------------------------------------0000 00000000 000 000 000 000 0000 0000 0000 0000 0000 0000 0000 0000 000 000 000 000 00000000 0000 OF 007, changelog: key: + = added - = subtracted / = modified --------------------------------------------------------------0000 00000000 000 000 000 000 0000 0000 0000 0000 0000 0000 0000 0000 000 000 000 000 00000000 0000 7777777777777777/========___________ 7777^^^^^^^7777/ || || ___________ 777 7777/=========// 7777// (( // 7777// \\ // 7777//========// 7777 7777 7777 77777 7777777 777777777

This is the biggest release yet. There are a ton of changes. The 0062 core was 6 24KB over 49 files. The 007 core is 1.12MB, 148 files. In other words, the core of OF has basically doubled. Some of the favorite changes to OF include: * PDF and SVG export with cairo * ofMesh, ofPolyline utils and ofPath tessellation * advanced ofColor support, like fromHex() and fromHsb() * web-based resource and image loading * advanced ofPixels power like getColor(x, y) * the new Assimp addon * advanced logging capabilities * the ofPtr shared pointer, and shallow copy semantics: it's now safe to copy of Texture * moving ofxVectorMath, ofxDirList, ofxThread, and the previously unofficial ofx Shader, ofxFbo, ofxVbo all into the core Here's a fairly complete list of the changes. core changes + drag and drop support in applications (except in linux) + ofPtr for shared pointers, is actually std::tr1::shared_ptr and will be std::s hared_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 SV G for 2d and 3d. / new fps counting technique that works a little better across platforms / ofApp*Window have been refactored so now all the common functionality is in of Events which makes easier to create new windows and maintain 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 seman tics so textureA = textureB makes textureB point to the same texture in the grap hics card as textureA, and the texture is released when the last copy is destroy ed / all swappable api objects (ofVideoGrabber, ofVideoPlayer, ofSoundPlayer and of SoundStream) 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 / Poco library is changed from 1.3.3 to 1.4 video and cv + ofxCvHaarFinder is brought into the core ofxOpenCv addon / openCV is updated to 2.2 / better gstreamer support on linux 2d + ofImage uses new web-based loading + ofPath and ofPolyline wraps all the 2d drawing functionality previously suppor ted by OF, and adds more. ofPolyline has some new advanced methods like getResam pledBySpacing(), getClosestPoint(), simplify() + ofSetOrientation() allows you to rotate the entire OF drawing space + ofPixels and ofImage have getColor() which returns an ofColor, and setColor(x, y,ofColor) + ofEnableBlendMode() supports additive, subtractive, alpha, etc. blending + ofColor has constants for 8 basic colors (cmy, rgb, bw), for example ofColor:: magenta + 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 va

lues, use ofColor::fromHsb(h,s,b,a). to set from hex, use ofColor::fromHex(hex) / ofColor, ofPixels and ofImage are now templated classes with support for 8bit, 16bit and 32bit and easy conversion between them using the = operator / ofDrawBitmapString() has been massively refactored to support all the differen t 3d drawing cases you can imagine via ofSetDrawBitmapMode() / ofPixels is now a fully-formed class that is used by a variety of classes / ofSetColor(int) is now interpreted as a grayscale value, ofSetHexColor(int) if you want to use hex values / 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 b assed on the tess2 library (with some modifications so it also works on openGL E S) which is faster and has a cleaner api than the previous one from GLU 3d + 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 manipu lated with methods like truck() and tilt() + ofCamera extends ofNode, is a new camera class for representing a camera posit ion, orientation, and other parameters + ofEasyCam wraps ofCamera with automatic mouse binding that resembles processin g's PeasyCam + ofLight also extends ofNode, provides a simple interface for placing and descr ibing opengl lighting + ofBox and ofSphere draw the respective 3d shapes + multiple versions of ofxShader, ofxVbo and ofxFbo have been brought into the c ore as ofShader, ofVbo, and ofFbo + ofxAssimpModelLoader for loading a huge variety of 3d formats utils + functions and classes to load resources from the web to memory, or save to dis k. using HTTP, either synchronously and asynchronously: ofSaveURLTo(), ofSaveURL Async() + added the ofxThreadedImageLoader addon + cross-platform file dialog and alert dialog, ofSystemAlertDialog(), ofSystemLo adDialog(), ofSystemSaveDialog() + a ton of conversion methods have been added: ofToHex, ofToBinary, ofToString, ofHexToInt, ofHexToFloat, etc. they're all inside ofUtils.h + ofFile and ofBuffer have also been added for working with the filesystem / the core addons ofxVectorMath, ofxThread, and ofxDirList have been turned into ofVectorMath, ofThread and ofDirectory / new logging system with support for << operator, for example: ofLogVerbose() < < "some message", logging to file and logging channels which makes it easier to redirect the logging output sound + working towards a sound synthesis addon, ofxSynth / slowly transitioning away from fmod toward openal for sound / ofSoundStream has been converted to an object oriented api, e to open several devices and choose which device you want to - FMOD is removed on linux, so there are no dependencies with ry mobile + android support / better iPhone video and camera support

support and now is possibl use. any non-free libra

--------------------------------------------------------------.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 iPh one 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 "ofEn ableNormalizedTexCoords()" + 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 an d 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: + = added - = subtracted / = modified

--------------------------------------------------------------major changes: - In this release we've moved to a *compiled* openFrameworks library as opposed to un-compiled. a few motivations: cutting down on directory size of OF, reduc ing redundant compiles, making compile times faster and making development of OF easier. This changes quite a bit the organization of projects but it should l ead to a much easier to use and maintain OF. - we've moved from svn to git / github, and now have an automated system of buil ding the OF package. This should also greatly ease our development of openFrame works. Before we had separate SVNs for the OF lib, the OF examples, and the cor e addons. Now, we've got one major place where changes and development of OF ca n be tracked. see http://github.com/openFrameworks/openFrameworks. - To encourage faster releases, we've moved to a major / minor release schedule, with minor releases (0061, 0062) relating to bug fixes and major releases (007, 008) relating to major features. core: / folder structure is now changed so that all ide/packages can share one directo ry structure. Download the 0061 all release to check it out. - core addons now don't have libs from other platforms - core addons now don't have example project in the addons folder / core FreeImage.h -> move BOOL typedefs etc to #defines and do #undef at the en d + Put MIT license in OF headers OSX: + xcode has snow leopard fixes, and an SL release / xcode projects are now renamed to have the folder name (ie, every project has a unique target name) / xcode apps now have max optimization settings for release. + xcode now has 3 build modes, Debug, Release, Release Universal. Debug and Rel ease are for your current platform (either intel or PPC), Release Universal is f or both. / renamed libs - change all libSomething.a to be something.a - this prevents xco de linking to root level dynamic libraries. Win32 CodeBlocks: + added Poco linker flag for CB - needed for some network calls / fixed Poco linking order on win32. linux: + changed the linux default videograbber to gstreamer - remove ofV4lUtils / smarter makefiles / modified install scripts to fix karmic problems &amp; build OF compile on inst all examples: / fixed missing files, missing calls to windowResized, removed unnecessary calls to ofSetupSCreen() and include stdio. app:

/ Fullscreen on OS X is not top level anymore (no more crazy fullscreen app cras hes and can't escape). / OSX now using custom GLUT framework / ofSetBackgroundAuto(false) on windows OF now works for accumulation in both wi ndowed and fullscreen mode. / Windows FPS issues have been fixed. / closing the window on PC now exits the application properly. / ofAppGlutWindow - frameRate is now set to 60.0 at the start - before it was un -initialized. + ofGetLastFrameTime - to get the elapsed time of the last frame. / fixes for ofGetWidth() &amp; ofGetHeight() being super slow, we now store them in vars and change on windowResize + ofGetAppPtr(), returns a pointer to the baseApp. + glutInitDisplayString option for initializing glut with a unique string, usefu l for FSAA or altering the setup. / fixed vertical sync for linux: http://www.openframeworks/forum/viewtopic.php?f =7&amp;t=561&amp;p=10683#p10683 + ofBaseVideo added isFrameNew() utils: + ofxNoise / ofxSignedNoise - Added simplex ( similar to perlin ) noise to core + ofBaseHasTexture now has ofSetUseTexture ( to enable / disable use of the text ure ) + ofBaseImage and ofBaseVideo have the same inheritance base / ofMap - now has a clamp argument, defaults to false / ofMap - added kyle's solution for division by 0 in ofMap: http://www.openframe works/forum/viewtopic.php?f=6&amp;t=1413&amp;view=unread#unread / detect C:/ as a root path in ofToDataPath / fixed ofPoint warnings events: / fixed vs2008 intellisense doesn't like using Poco::delegate; in ofEventUtils: http://www.openframeworks/forum/viewtopic.php?f=9&amp;t=1877 graphics: / ofImage - Loading a corrupted image in linux made the app crash, fixed now. / ofImage setImageType now should properly alter the texture if we need to. + ofTexture - get texPoint / texPercent, should help for doing texCoordinate stu ff without knowing the target of the texture (ie, RECTANGLE_2D or ARB) + ofTexture - setTextureWrap &amp; setMinMagFilters + ofTexture - ofTexture float *, char *, short * -- added ability to make floati ng point textures, or upload float data. / ofTrueTypeFont - fixed TTF mem leak - http://www.openframeworks/forum/viewtopi c.php?p=10178&#p10178 / ofImage fixed resize color bug / ofImage inline functions cause problems with inhereited classes that want to u se them in CB. Switch inline -> static fixes this issue. / ofGraphics - numCirclePts was being stored on ofPushStyle but not used, fixed now. / ofTrueTypeFont - Xcode projects now use the same version of the freetype as wi n/linux + ofSetCurveResolution - makes curved shapes a lot faster! / setAnchorPoint - move arguments from int to float communication:

/ merged ofStandardFirmata into ofArduino, and removed ofStandardFirmata files f rom all projects. / fixed Linux serial issues with device number. / fixed firmata connect inconsistency: http://www.openframeworks/forum/viewtopic .php?t=1765 / serial enumerateDevices is doing ofLog so not always printing out: http://www. openframeworks/forum/posting.php?mode=reply&amp;f=6&amp;t=1860 / fix for ofArduino: http://www.openframeworks/forum/viewtopic.php?f=8&amp;t=304 2&amp;p=16425#p16425 video: + add setFrameRate for ofVideoGrabber / update the quicktime settings dialog so that PS3 eye panel shows up. / ofVideoPlayer and ofVideoGrabber on OS X Intel now using k24RGBPixelFormat - t his has a huge speed improvement. / ofVideoGrabber on mac seems to not list devices unless log level is verbose ht tp://www.openframeworks/forum/viewtopic.php?f=9&amp;t=1799&amp;view=unread#unrea d / ofVideoPlayer uninitialized bool / ofVideoPlayer - pause delay / ofUCUtils - PIX_FMT_YUV422 won't exist anymore on future ffmpeg versions / ofUCUtils - sws_getContext needs PixFmt as parameter instead of int since karm ic sound: / updated ofSoundStream to use rtAudio 4 + Add a ofSoundPlayerUpdate call - for keeping fmod on track - should be called once per frame to make sure sounds don't drop out. addons: / / / / ofxXmlSettings ofxXmlSettings ofxXmlSettings ofxXmlSettings fixed a printf(tag.c_str()) that xcode complained about memory leak read attributes read from string / save to string

ofxVectorGraphics: + Update to CreEPS 2.0 - has MIT license and new features. ofxOpenCv: + ofxCvColorImage - convertToPlanarImage(...) for one channel (ie, grabbing just sautration) / ofxCvShortImage - fixed assignment operators + ofxCvGrayscaleImage - add brightness / contrast to grayscale image / ofxCvContourFinder converts centroid to ints / ofxOpenCv - fixed grayscale to planar / planar to grayscale conversions - ofxOpenCv - remove implicit ROI intersection + ofxCvImage - re-added drawBlobIntoMe() for painting a blob into an ofxCvImage + ofxOpenCv - added appropriate iphone #ifdefs / ofxOpenCv - do quicker copy for getPixels and setPixels when image is memory a lligned already. / ofxOpenCv scale conversions for floatImage / ofxOpenCv swapTemp bug ofxOsc:

/ ofxOsc - shutdown leak / ofxOsc - memory leak / ofxOsc - Shutdown issue - fix here: http://damian.dreamhosters.com/svn/public/ ofxOsc/latest/ ofxThread / stopThread now called when threaded function returns ofxVectorMath / went back to inlining, for performance + added ofxMatrx4x4 and ofxQuaternion / ofxPoin2/3/4f deprecated merged with ofxVec2/3/4f ofxNetwork: / fixed for xcode needs tcp.h included in ofxUdpManager --------------------------------------------------------------.oooo. d8P'`Y8b 888 888 888 888 888 888 `88b d88' `Y8bd8P' .oooo. d8P'`Y8b 888 888 888 888 888 888 `88b d88' `Y8bd8P' .ooo .88' d88' d888P"Ybo. Y88[ ]88 `Y88 88P `88bod8'

OF 006 Pre-release, changelog: key: + = added - = subtracted / = modified --------------------------------------------------------------major changes: -- in this release we've added another library Poco, v 1.3.3 ( http://pocoprojec t.org ), just now only used for events but is included in the core available for addons l ike ofxHttpUtils. For java folks, Poco is a bit like the java sdk (java.io, java.util, java.net, e tc) -- added the event system for base events (setup, update, draw, mouse, keyboard) and constructing new events. -- dropped the addons.h system in place of direct inclusion of addons .h files. Old code will get warnings but not break for this release -- abstracted the window toolkit, so that other windowing toolkits besides glut can be used with OF, such as iphone, glfw, non-windowed (command line). -- all graphics have been opengl-es-ified, allowing for iphone support -- all objects have virtual destructors (thanks memo for the tip) -- all objects that draw can return their internal texture -- adding base types for OF object (ofBaseDraws, ofBaseHasPixels) which should a llow better OOP programming with OF -- added advanced user functionality, like choosing the ARB extension usage, dis abling setupScreen, binding of textures, etc. -- tons and tons of bug fixes and small functions (ofClamp, push and pop styles) that should make programming in OF easier

--------------------------------------------------------------app / ofAppRunner - setup update draw should be called in the right order (prior was setup, draw, update) + ofAppBaseWindow / ofAppGlutWindow - glut abstraction and base window toolkit, tested with glfw, iphone and no window + disable / enable setup screen / ofSimpleApp - is now ofBaseApp / ofSimpleApp - mouseRelease receives now x, y and button + ofSimpleApp - added a windowResized function called when the window size chang es utils + ofTypes - added an inheritance hierarchy, ofBaseDraws, ofBaseUpdates, ofBaseHa sTexture, ofBaseHasPixels and ofBaseVideo / ofTypes - added operator overloading to ofPoint / ofUtils - ofToDataPath can now be deactivated or queried for absolute path + ofUtils - ofSplitString for tokenization + ofUtils - added ofLog and logging system with warning levels / ofUtils - ofLaunchBrowser now works on linux + ofMath - added ofNormalize, ofMap, ofClamp, ofLerp, ofDist, ofDistSquared, ofS ign, ofInRange, ofRadToDeg, ofDegToRad, ofRandomWidth, ofRandomHeight ( thanks todd, memo. kyle ) / ofMath - better seeding for ofRandom graphics + ofTrueType - added that ability to get fonts as polygons, bezier interpolation , with polygon simplification for performance + ofGraphics - added an ofColor type, for push and pop style + ofGraphics - ofRestoreGraphicsDefaults, for reseting all graphical changes / ofGraphics - ofEllipse fixes / ofGraphics - changed ofCircle from display list to a pre cache vertex list - faster! + ofGraphics - basic tranformations and opengl wrapping, ie, ofRotate(), ofRotat eX(), ofRotateY(), ofRotateZ(), + ofGraphics - added an ofStyle struct - it holds color, line width, circle reso lution, blend mode, smoothing, fill mode + ofGraphics - push style / pop style getStyle and setStyle to get and set the style + ofGraphics - ofSetLineWidth / ofGraphics - fixed a bug with projection vs modelview matrix order http://www.openframeworks/forum/viewtopic.php?p=5213#5213 + ofGraphics - changed immediate mode to vertex arrays for compatibility with op engl es + ofGraphics / ofBitmapFont - wrapped the glut bitmapped font as a separate file , so that ofDrawBitmapString can be used in non glut windowing kits. + ofTexture - ofTextureData contains info about the texId, etc so that advanced folks can bind + ofTexture - calls to bind / unbind + ofTexture - setAnchorPercent / setAnchorPoint + ofTexture - enable / disable our texture "hack", a small padding that helps of Textues look good in + ofTexture - bUseARBExtention is controllable on allocate (and also, controllab

le globally), which can help make shaders work better / ofImage - restructured for cleaner code -- freeImage moved to only a few place s / ofImage - grayscale saveImage bug fixed / ofImage - grayscale setFromPixels fix -- http://www.openframeworks/forum/viewt opic.php?t=929 / ofImage - allocate now calls update -- http://www.openframeworks/forum/viewtop ic.php?t=835 / ofImage - 8bpp fix - http://www.openframeworks/forum/viewtopic.php?t=712 / ofImage - grayscale save fix - http://www.openframeworks/forum/viewtopic.php?t =943 / ofImage - fixed loadImage() not returning true if successful / ofImage - added setAnchorPercent / setAnchorPoint / ofImage - fixed resize color swap problem - http://www.openframeworks/forum/vi ewtopic.php?t=1242 events + added an event system that allows objects receive core events ( draw, mouse, k ey...), and to create other events. video / ofVideoGrabber - (quicktime) much better device listing / selection. / ofVideoGrabber - (quicktime / mac) fixed isFrameNew always returning true / ofVideoGrabber - (linux) some changes to size and format detection / ofVideoGrabber - (linux) better support for yuv and other colorspaces (won't w ork on ubuntu hardy because of a problem with the ffmpeg version) / ofVideoGrabber - (linux) resize and colorspace conversion through ffmpeg / ofVideoGrabber - (linux) corrected errors on close / ofVideoGrabber - (windows) using new video input library (0.1995) + ofVideoPlayer - (quicktime) added rtsp for quicktime http://www.openframeworks/forum/viewtopic.php?p=7665#7665 + ofVideoPlayer - added a frame selection system, ie, goToFrame(x), getNumFrames (), goToFirstFrame(), getCurrentFrame(), goToNextFrame(), goToPreviousFrame() + ofVideoPlayer - added getIsMovieDone() - let's you know if the movie hit the e nd / ofVideoPlayer - (linux) all functionality working now / ofVideoPlayer - (linux) changed fobs out for gstreamer / ofVideoPlayer - (linux) sound in videos communication / ofSerial - fixed read byte errors / ofSerial - verbose, with non reads / ofSerial - 0 / -1 error reporting better + ofSerial - flush, allows you to clear the serial buffer + ofSerial - available() lets you query how many bytes are available. + ofStandardFirmata - added this class (thanks erik!) for easier serial support + ofArduino - added this class which extends ofStandardFirmata with specific ard uino functions sound / ofSoundPlayer - (linux) alsa as default backend addons changes that are part of FAT package

in this release, we've moved the use of ofAddons.h and the define system. now, we just include the main .h file per addon. / ofxNetwork - disconnection detection / ofxNetwork - no data loss on tcp + ofxNetwork - udp examples / ofxThread - Applied the fix for startThread checking it is already running and moving mutex creation http://www.openframeworks/forum/viewtopic.php?p=7221#7221 + ofxVectorMath - add copy constructor - http://www.openframeworks/forum/viewtop ic.php?t=617 / ofxVectorMath - fixed ofxVec2f::perpendicular bug, http://www.openframeworks/f orum/viewtopic.php?t=4835 / ofxVectorMath - fixed /= operator + ofxVectorMath - added some better names for functions (for example, getRotated () instead of rotated()). All "d" names, ie rotated, normalized are deprecated for the next release) + ofxOpenCv / ofxOpenCv / ofxOpenCv types / ofxOpenCv / ofxOpenCv c.php?t=828 / ofxOpenCv php?t=935 / ofxOpenCv - added ROI functionality for all ofxCvImage - ofxContourFinder fixed getBlob(), which existed only in .h before - consolidated ofxCvImage - most functionality now across all image - operator overloading changed to const - scaleIntoMe bug is fixed, http://www.openframeworks/forum/viewtopi - reallocation bug fixed, http://www.openframeworks/forum/viewtopic. - warns on non odd valued blur param

+ ofxOsc - now supports bundles + ofxOsc - better error handling --------------------------------------------------------------.oooo. d8P'`Y8b 888 888 888 888 888 888 `88b d88' `Y8bd8P' .oooo. d8P'`Y8b 888 888 888 888 888 888 `88b d88' `Y8bd8P' oooooooo dP""""""" d88888b. `Y88b ]88 o. .88P `8bd88P'

OF 005 Pre-release, changelog: key: + = added - = subtracted / = modified --------------------------------------------------------------major changes: in this release we introduced a "FAT" package as well as an addons.h system that uses #defines. removed the ofCore to fix some include issues. / better ofMain / addons system

- no ofCore --------------------------------------------------------------other changes: app + ofAppRunner - recording of the screens original position / ofAppRunner - jorge's fix for idle / setFrameRate() http://www.openframeworks/forum/viewtopic.php?t=515&amp;highlight=frame+rate / ofAppRunner - mac hide cursor communication / ofSerial - joerg's fixes for pc serial / ofSerial - better support for non "COM" ports / ofSerial - improved write bytes / ofSerial - no longer using "string" for serial, which was failing for binary d ata. that was a terrible idea. / ofSerial - returning -1 for errors on read byte; graphics / / / + ofGraphics - fixed the tesselator to work on different versions of xcode ofImage - moved constants to ofConstants ofImage - made freeImage stuff more integrated ofImage - added copy and equals overloaders, so that imageA = imageB will work as intended + ofImage - added a clear() function / ofImage - better cloning + ofTexture - added copy and equals overloaders to prevent pass by copy + ofTrueTypeFont - getStringBoundingBox() to get the bounding box utils + + + / + / ofTypes - added ofTypes, for base types like ofPoint, ofRectangle ofConstants - added a #define WIN32_LEAN_AND_MEAN for window ofConstants - some GLUT defines that help for windows ofConstants - disabled another VS warning ofConstants - added some std stuff, like iostream and vector ofConstants - backspace vs del fixes for OSX

http://www.openframeworks/forum/viewtopic.php?t=494 + ofUtils - added ofGetYear, ofGetMonth,ofGetDay(),ofGetWeekDay() sound + ofSoundPlayer - added isStreaming field / ofSoundStream - fixed ofSoundStreamEnd / ofSoundStream - renamed ofSoundStreamEnd ofSoundStreamClose video + ofVideoGrabber - added linux support for unicap as well as V4L, settable in of Contstants + ofVideoGrabber - added ofUCUtils + ofVideoGrabber - tons of V4L fixes

+ ofVideoPlayer - createMovieFromURL for quicktime / 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' `88b d88' 888 `Y8bd8P' `Y8bd8P' o888o OF 004 Pre-release, changelog: key: + = added - = subtracted / = modified --------------------------------------------------------------major changes: -- fixed an issue with addons include, now its a system with ofCore.h / ofMain.h / ofAddons.h -- addons folder added to the setup --------------------------------------------------------------a brief explanation about addons: now the structure look like: -- apps -- libs -- addons where libs are the core libraries for OF (which shouldn't change much), and addo ns is everything else. Adding a library will work in the following way: a) add to the addons folder everything downloaded b) add to addons.h the "addon.h" lines (found in addon instructions), such as: #ifdef OFADDON_USING_OF_CV #include "ofCvMain.h" #endif c) follow any steps about adding includes, sources, and libs to the project (or makefile) d) when you want to use the addon, use the #define before including ofMain in te stApp.h, such as: #define OFADDON_USING_OF_CV #define OFADDON_USING_OF_VECTOR_MATH #include "ofMain.h" e) place any dll / .so files in the right place (after compiling) --------------------------------------------------------------other changes:

/ ofGraphics - fixed a bug with OS X, 10.5 compiling / ofSerial - fixed a bug with win32 destructor / ofVideoGrabber - mac grabber fixed bug with settings loading / ofMain - is now just ofCore and ofAddons + ofAddons - is the place where addons will go + ofCore - is the what ofMain was, all the "core" OF code (internal and a ddons should include "core" not main to avoid recursive linking) / movie grabber example - win32 / fixed an issue where some of the code wa s commented out. --------------------------------------------------------------.oooo. d8P'`Y8b 888 888 888 888 888 888 `88b d88' `Y8bd8P' .oooo. .oooo. d8P'`Y8b .dP""Y88b 888 888 ]8P' 888 888 <88b. 888 888 `88b. `88b d88' o. .88P `Y8bd8P' `8bd88P'

OF 003 Pre-release, changelog: key: + = added - = subtracted / = modified --------------------------------------------------------------major changes: -- start of a structure for of addons -- all classes feature protected variables instead of priavete for easier extend ing -- linux is *really* integrated into the codebase, this is BIG! -- fmod is updated to fmodex -- glu is included for tesselation routines -- ofSerial is a class now -- much more careful classes in terms of memory usage -- much better closing routine -- string is used everywhere we can instead of char * or char arrays (much usage stays the same though) -- ofVertex for curves, more graphics options added -- every app now uses a "data" folder for any OF loading and saving media --------------------------------------------------------------other changes: (there are likely more, this is what we can remember but we will update as we up date the API) + ofTexture - non power of 2 when possible using GLEE / ARB extensions + ofGraphics - curves: beziers and curve vertex, etc. + ofGraphics - polygons (poly shapes) using ofBeginShape() and tesselation + ofGraphics - polygon w/ multiple contours for holes (using ofNextContour ()) + ofImage - copy image operator (clone) + ofImage - upload data (fix rgb/bgr issues) / whole code - remove all the top left bools, top left as 0,0 is fixed in the code now. + ofVideoGrabber - (OSX) Save user preferences with qtVideoCapture dialog + ofVideoGrabber - new VI input lib in for video grabber

ofVideoGrabber / ofVideoPlayer - isFrameNew() behaves better, newness is per idle call + ofSimpleApp - key release in addition to key press / ofSimpleApp - special keys coming through uniquely (see constants.h) + ofAppRunner - ofFullScreen opition to alter the screen + ofAppRunner - get monitor info (w/h) and position window options + ofAppRunner - glut game mode / whole code - no "../../../" BS, we now have data folders! + ofAppRunner - set window title + ofUtils - open a URL in default browser + ofConstants - clamp in ofConstants.h + ofUtils - simple version printout / whole code - destructors everywhere --------------------------------------------------------------.oooo. d8P'`Y8b 888 888 888 888 888 888 `88b d88' `Y8bd8P' .oooo. .oooo. d8P'`Y8b .dP""Y88b 888 888 ]8P' 888 888 .d8P' 888 888 .dP' `88b d88' .oP .o `Y8bd8P' 8888888888

OF 002 Pre-release, changelog: key: + = added - = subtracted / = modified --------------------------------------------------------------major changes: -- added ofSerial class for serial communication -- added ofSoundPlayer class for fmod / sound sample playing -- ofAudio now named ofSoundStream to make more sense -- added glee and fmod libraries to the path -- added videoInput library on windows for grabbing video (via direct show) -- renamed ofQtVideoGrabber to ofVideoGrabber (since it doesn't nec. use quicktime) -- renamed ofQtVideoPlayer to ofVideoPlayer -- lots of fixes to get rid of warnings -- xcode libs now all universal. -- xcode can now build universal apps when in 'Release' mode. --------------------------------------------------------------others: + ofSimpleApp - mouseX, mouseY now added for p5 compatability / ofSimpleApp - fixed some bugs, like mouseMoved before the windows is open + ofUtils - ofSetFrameRate() to set a target framerate + ofUtils - ofSetVertical sync to set vertical sync on or off / ofGraphics - 0,0 is now top left by default + ofGraphics - ofEnableSmoothing(), works just for lines for now. + ofGraphics - ofSetCornerMode for drawing rects on center or corner + ofGraphics - ofSetBackgroundAuto() to enable manual background clearing (works for fullscreen) + ofTexture - loadScreenData(), upload screen data to texture / ofTrueTypeFont - many bug fixes for the black edges and cut off curves / ofVideoPlayer - setPaused() bug fix + ofVideoGrabber - device selection options

+ ofVideoGrabber - multiple devices works both qt and dshow + ofConstants - added some high res timer code in win32, accessible through commenting in a #define and recompiling + ofConstants - ability for win32 to choose quicktime or directshow (videoInput) through #define --------------------------------------------------------------most ascii art generated with http://patorjk.com/software/taag/ using the font ' roman' ---------------------------------------------------------------

You might also like