Mastering Openframeworks: Creative Coding Demystified
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Try Coding with These Fun Books!
Try Coding with These Fun Books! www.mywpl.ca Coding From Scratch Code like a Girl By Rachel Ziter By Miriam Peskowitz Learn to create your own Get started on the games, animations or adventure of coding with other projects in no time! cool projects and step by Whether you’re just step tips. learning to code or need a refresher, this visual guide Find in library: will cover all of the basics J 005.13082 PES of Scratch programming. Find in library: J 005.133 ZIT A Beginner’s Guide to How to Code Coding By Max Wainewright By Marc Scott Teaches you all the basic An easy-to-follow guide to concepts like Loops, basics of coding, using free Variables and Selections programs like Scratch and and make your own Python. Includes step by website. Learn how to use step instructions to make Lego, build games in your own chatbot or video Scratch or experiment with game. HTML. Find in library: J 005.1 SCO Find in library: J 000.1 WAI Creative Coding in Coding Onstage By Kristin Fontichiaro Python By Sheena Vaidyanathan Presents early learners Kids will learn the with a theatre story fundamentals of challenge they can solve computer programming in using Scratch 3. Book is 30+ fun projects with the aligned to curriculum standards and includes intuitive programming language of Python extension activities. Find as a Hoopla eBook. Find in library: J 005.133 VAI Algorithms with Frozen Coding Basics By Allyssa Loya By George Anthony Kulz An easy to understand Explains how coding is used introduction to looping for today, key concepts include young readers. -
The Uses of Animation 1
The Uses of Animation 1 1 The Uses of Animation ANIMATION Animation is the process of making the illusion of motion and change by means of the rapid display of a sequence of static images that minimally differ from each other. The illusion—as in motion pictures in general—is thought to rely on the phi phenomenon. Animators are artists who specialize in the creation of animation. Animation can be recorded with either analogue media, a flip book, motion picture film, video tape,digital media, including formats with animated GIF, Flash animation and digital video. To display animation, a digital camera, computer, or projector are used along with new technologies that are produced. Animation creation methods include the traditional animation creation method and those involving stop motion animation of two and three-dimensional objects, paper cutouts, puppets and clay figures. Images are displayed in a rapid succession, usually 24, 25, 30, or 60 frames per second. THE MOST COMMON USES OF ANIMATION Cartoons The most common use of animation, and perhaps the origin of it, is cartoons. Cartoons appear all the time on television and the cinema and can be used for entertainment, advertising, 2 Aspects of Animation: Steps to Learn Animated Cartoons presentations and many more applications that are only limited by the imagination of the designer. The most important factor about making cartoons on a computer is reusability and flexibility. The system that will actually do the animation needs to be such that all the actions that are going to be performed can be repeated easily, without much fuss from the side of the animator. -
Getting Started
4620rlin.fm Page 1 Thursday, April 8, 1999 5:42 PM Getting Started &UHDWLYH6RXQG%ODVWHU/LYH &UHDWLYH$XGLR6RIWZDUH Information in this document is subject to change without notice and does not represent a commitment on the part of Creative Technology Ltd. No part of this manual may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying and recording, for any purpose without the written permission of Creative Technology Ltd. The software described in this document is furnished under a license agreement and may be used or copied only in accordance with the terms of the license agreement. It is against the law to copy the software on any other medium except as specifically allowed in the license agreement. The licensee may make one copy of the software for backup purposes. Copyright © 1998-1999 by Creative Technology Ltd. All rights reserved. Version 2.00 April 1999 Sound Blaster and Blaster are registered trademarks, and the Sound Blaster Live! logo, the Sound Blaster PCI logo, EMU10K1, Environmental Audio, and Creative Multi Speaker Surround are trademarks of Creative Technology Ltd. in the United States and/or other countries. E-Mu and SoundFont are registered trademarks of E-mu Systems, Inc.. SoundWorks is a registered trademark, and MicroWorks, PCWorks and FourPointSurround are trademarks of Cambridge SoundWorks, Inc.. Microsoft, MS-DOS, and Windows are registered trademarks of Microsoft Corporation. All other products are trademarks or registered trademarks of their respective owners. This product is covered by one or more of the following U.S. patents: 4,506,579; 4,699,038; 4,987,600; 5,013,105; 5,072,645; 5,111,727; 5,144,676; 5,170,369; 5,248,845; 5,298,671; 5,303,309; 5,317,104; 5,342,990; 5,430,244; 5,524,074; 5,698,803; 5,698,807; 5,748,747; 5,763,800; 5,790,837. -
Multimedia Systems DCAP303
Multimedia Systems DCAP303 MULTIMEDIA SYSTEMS Copyright © 2013 Rajneesh Agrawal All rights reserved Produced & Printed by EXCEL BOOKS PRIVATE LIMITED A-45, Naraina, Phase-I, New Delhi-110028 for Lovely Professional University Phagwara CONTENTS Unit 1: Multimedia 1 Unit 2: Text 15 Unit 3: Sound 38 Unit 4: Image 60 Unit 5: Video 102 Unit 6: Hardware 130 Unit 7: Multimedia Software Tools 165 Unit 8: Fundamental of Animations 178 Unit 9: Working with Animation 197 Unit 10: 3D Modelling and Animation Tools 213 Unit 11: Compression 233 Unit 12: Image Format 247 Unit 13: Multimedia Tools for WWW 266 Unit 14: Designing for World Wide Web 279 SYLLABUS Multimedia Systems Objectives: To impart the skills needed to develop multimedia applications. Students will learn: z how to combine different media on a web application, z various audio and video formats, z multimedia software tools that helps in developing multimedia application. Sr. No. Topics 1. Multimedia: Meaning and its usage, Stages of a Multimedia Project & Multimedia Skills required in a team 2. Text: Fonts & Faces, Using Text in Multimedia, Font Editing & Design Tools, Hypermedia & Hypertext. 3. Sound: Multimedia System Sounds, Digital Audio, MIDI Audio, Audio File Formats, MIDI vs Digital Audio, Audio CD Playback. Audio Recording. Voice Recognition & Response. 4. Images: Still Images – Bitmaps, Vector Drawing, 3D Drawing & rendering, Natural Light & Colors, Computerized Colors, Color Palletes, Image File Formats, Macintosh & Windows Formats, Cross – Platform format. 5. Animation: Principle of Animations. Animation Techniques, Animation File Formats. 6. Video: How Video Works, Broadcast Video Standards: NTSC, PAL, SECAM, ATSC DTV, Analog Video, Digital Video, Digital Video Standards – ATSC, DVB, ISDB, Video recording & Shooting Videos, Video Editing, Optimizing Video files for CD-ROM, Digital display standards. -
Vector Synthesis: a Media Archaeological Investigation Into Sound-Modulated Light
VECTOR SYNTHESIS: A MEDIA ARCHAEOLOGICAL INVESTIGATION INTO SOUND-MODULATED LIGHT Submitted for the qualification Master of Arts in Sound in New Media, Department of Media, Aalto University, Helsinki FI April, 2019 Supervisor: Antti Ikonen Advisor: Marco Donnarumma DEREK HOLZER [BLANK PAGE] Aalto University, P.O. BOX 11000, 00076 AALTO www.aalto.fi Master of Arts thesis abstract Author Derek Holzer Title of thesis Vector Synthesis: a Media-Archaeological Investigation into Sound-Modulated Light Department Department of Media Degree programme Sound in New Media Year 2019 Number of pages 121 Language English Abstract Vector Synthesis is a computational art project inspired by theories of media archaeology, by the history of computer and video art, and by the use of discarded and obsolete technologies such as the Cathode Ray Tube monitor. This text explores the military and techno-scientific legacies at the birth of modern computing, and charts attempts by artists of the subsequent two decades to decouple these tools from their destructive origins. Using this history as a basis, the author then describes a media archaeological, real time performance system using audio synthesis and vector graphics display techniques to investigate direct, synesthetic relationships between sound and image. Key to this system, realized in the Pure Data programming environment, is a didactic, open source approach which encourages reuse and modification by other artists within the experimental audiovisual arts community. Keywords media art, media-archaeology, audiovisual performance, open source code, cathode- ray tubes, obsolete technology, synesthesia, vector graphics, audio synthesis, video art [BLANK PAGE] O22 ABSTRACT Vector Synthesis is a computational art project inspired by theories of media archaeology, by the history of computer and video art, and by the use of discarded and obsolete technologies such as the Cathode Ray Tube monitor. -
Procedural Generation of a 3D Terrain Model Based on a Predefined
Procedural Generation of a 3D Terrain Model Based on a Predefined Road Mesh Bachelor of Science Thesis in Applied Information Technology Matilda Andersson Kim Berger Fredrik Burhöi Bengtsson Bjarne Gelotte Jonas Graul Sagdahl Sebastian Kvarnström Department of Applied Information Technology Chalmers University of Technology University of Gothenburg Gothenburg, Sweden 2017 Bachelor of Science Thesis Procedural Generation of a 3D Terrain Model Based on a Predefined Road Mesh Matilda Andersson Kim Berger Fredrik Burhöi Bengtsson Bjarne Gelotte Jonas Graul Sagdahl Sebastian Kvarnström Department of Applied Information Technology Chalmers University of Technology University of Gothenburg Gothenburg, Sweden 2017 The Authors grants to Chalmers University of Technology and University of Gothenburg the non-exclusive right to publish the Work electronically and in a non-commercial purpose make it accessible on the Internet. The Author warrants that he/she is the author to the Work, and warrants that the Work does not contain text, pictures or other material that violates copyright law. The Author shall, when transferring the rights of the Work to a third party (for example a publisher or a company), acknowledge the third party about this agreement. If the Author has signed a copyright agreement with a third party regarding the Work, the Author warrants hereby that he/she has obtained any necessary permission from this third party to let Chalmers University of Technology and University of Gothenburg store the Work electronically and make it accessible on the Internet. Procedural Generation of a 3D Terrain Model Based on a Predefined Road Mesh Matilda Andersson Kim Berger Fredrik Burhöi Bengtsson Bjarne Gelotte Jonas Graul Sagdahl Sebastian Kvarnström © Matilda Andersson, 2017. -
Nuke Survival Toolkit Documentation
Nuke Survival Toolkit Documentation Release v1.0.0 Tony Lyons | 2020 1 About The Nuke Survival Toolkit is a portable tool menu for the Foundry’s Nuke with a hand-picked selection of nuke gizmos collected from all over the web, organized into 1 easy-to-install toolbar. Installation Here’s how to install and use the Nuke Survival Toolkit: 1.) Download the .zip folder from the Nuke Survival Toolkit github website. https://github.com/CreativeLyons/NukeSurvivalToolkit_publicRelease This github will have all of the up to date changes, bug fixes, tweaks, additions, etc. So feel free to watch or star the github, and check back regularly if you’d like to stay up to date. 2.) Copy or move the NukeSurvivalToolkit Folder either in your User/.nuke/ folder for personal use, or for use in a pipeline or to share with multiple artists, place the folder in any shared and accessible network folder. 3.) Open your init.py file in your /.nuke/ folder into any text editor (or create a new init.py in your User/.nuke/ directory if one doesn’t already exist) 4.) Copy the following code into your init.py file: nuke.pluginAddPath( "Your/NukeSurvivalToolkit/FolderPath/Here") 5.) Copy the file path location of where you placed your NukeSurvivalToolkit. Replace the Your/NukeSurvivalToolkit/FolderPath/Here text with your NukeSurvivalToolkit filepath location, making sure to keep quotation marks around the filepath. 6.) Save your init.py file, and restart your Nuke session 7.) That’s it! Congrats, you will now see a little red multi-tool in your nuke toolbar. -
Fast, High Quality Noise
The Importance of Being Noisy: Fast, High Quality Noise Natalya Tatarchuk 3D Application Research Group AMD Graphics Products Group Outline Introduction: procedural techniques and noise Properties of ideal noise primitive Lattice Noise Types Noise Summation Techniques Reducing artifacts General strategies Antialiasing Snow accumulation and terrain generation Conclusion Outline Introduction: procedural techniques and noise Properties of ideal noise primitive Noise in real-time using Direct3D API Lattice Noise Types Noise Summation Techniques Reducing artifacts General strategies Antialiasing Snow accumulation and terrain generation Conclusion The Importance of Being Noisy Almost all procedural generation uses some form of noise If image is food, then noise is salt – adds distinct “flavor” Break the monotony of patterns!! Natural scenes and textures Terrain / Clouds / fire / marble / wood / fluids Noise is often used for not-so-obvious textures to vary the resulting image Even for such structured textures as bricks, we often add noise to make the patterns less distinguishable Ех: ToyShop brick walls and cobblestones Why Do We Care About Procedural Generation? Recent and upcoming games display giant, rich, complex worlds Varied art assets (images and geometry) are difficult and time-consuming to generate Procedural generation allows creation of many such assets with subtle tweaks of parameters Memory-limited systems can benefit greatly from procedural texturing Smaller distribution size Lots of variation -
IWCE 2015 PTIG-P25 Foundations Part 2
Sponsored by: Project 25 College of Technology Security Services Update & Vocoder & Range Improvements Bill Janky Director, System Design IWCE 2015, Las Vegas, Nevada March 16, 2015 Presented by: PTIG - The Project 25 Technology Interest Group www.project25.org – Booth 1853 © 2015 PTIG Agenda • Overview of P25 Security Services - Confidentiality - Integrity - Key Management • Current status of P25 security standards - Updates to existing services - New services 2 © 2015 PTIG PTIG - Project 25 Technology Interest Group IWCE 2015 I tell Fearless Leader we broke code. Moose and Squirrel are finished! 3 © 2015 PTIG PTIG - Project 25 Technology Interest Group IWCE 2015 Why do we need security? • Protecting information from security threats has become a vital function within LMR systems • What’s a threat? Threats are actions that a hypothetical adversary might take to affect some aspect of your system. Examples: – Message interception – Message replay – Spoofing – Misdirection – Jamming / Denial of Service – Traffic analysis – Subscriber duplication – Theft of service 4 © 2015 PTIG PTIG - Project 25 Technology Interest Group IWCE 2015 What P25 has for you… • The TIA-102 standard provides several standardized security services that have been adopted for implementation in P25 systems. • These security services may be used to provide security of information transferred across FDMA or TDMA P25 radio systems. Note: Most of the security services are optional and users must consider that when making procurements 5 © 2015 PTIG PTIG - Project 25 Technology -
Code-Bending: a New Creative Coding Practice
Code-bending: a new creative coding practice Ilias Bergstrom1, R. Beau Lotto2 1EventLAB, Universitat de Barcelona, Campus de Mundet - Edifici Teatre, Passeig de la Vall d'Hebron 171, 08035 Barcelona, Spain. Email: [email protected], [email protected] 2Lottolab Studio, University College London, 11-43 Bath Street, University College London, London, EC1V 9EL. Email: [email protected] Key-words: creative coding, programming as art, new media, parameter mapping. Abstract Creative coding, artistic creation through the medium of program instructions, is constantly gaining traction, a steady stream of new resources emerging to support it. The question of how creative coding is carried out however still deserves increased attention: in what ways may the act of program development be rendered conducive to artistic creativity? As one possible answer to this question, we here present and discuss a new creative coding practice, that of Code-Bending, alongside examples and considerations regarding its application. Introduction With the creative coding movement, artists’ have transcended the dependence on using only pre-existing software for creating computer art. In this ever-expanding body of work, the medium is programming itself, where the piece of Software Art is not made using a program; instead it is the program [1]. Its composing material is not paint on paper or collections of pixels, but program instructions. From being an uncommon practice, creative coding is today increasingly gaining traction. Schools of visual art, music, design and architecture teach courses on creatively harnessing the medium. The number of programming environments designed to make creative coding approachable by practitioners without formal software engineering training has expanded, reflecting creative coding’s widened user base. -
Prioritizing Pull Requests
Prioritizing pull requests Version of June 17, 2015 Erik van der Veen Prioritizing pull requests THESIS submitted in partial fulfillment of the requirements for the degree of MASTER OF SCIENCE in COMPUTER SCIENCE by Erik van der Veen born in Voorburg, the Netherlands Software Engineering Research Group Q42 Department of Software Technology Waldorpstraat 17F Faculty EEMCS, Delft University of Technology 2521 CA Delft, the Netherlands The Hague, the Netherlands www.ewi.tudelft.nl www.q42.com c 2014 Erik van der Veen. Cover picture: Finding the pull request that needs the most attention. Prioritizing pull requests Author: Erik van der Veen Student id: 1509381 Email: [email protected] Abstract Previous work showed that in the pull-based development model integrators face challenges with regard to prioritizing work in the face of multiple concurrent pull requests. We identified the manual prioritization heuristics applied by integrators and ex- tracted features from these heuristics. The features are used to train a machine learning model, which is capable of predicting a pull request’s importance. The importance is then used to create a prioritized order of the pull requests. Our main contribution is the design and initial implementation of a prototype service, called PRioritizer, which automatically prioritizes pull requests. The service works like a priority inbox for pull requests, recommending the top pull requests the project owner should focus on. It keeps the pull request list up-to-date when pull requests are merged or closed. In addition, the service provides functionality that GitHub is currently lacking. We implemented pairwise pull request conflict detection and several new filter and sorting options e.g. -
JOSH MILLER [email protected]
CREATING VISUALS IN PROCESSING JOSH MILLER [email protected] www.josh-miller.com WHAT IS PROCESSING? • Free software: processing.org • Old... 2001 old, but constantly updated • Started at MIT • Created to teach Comp Sci, embraced by artist nerds WHAT IS PROCESSING? • Free software: processing.org • Old... 2001 old, but constantly updated • Started at MIT • Created to teach Comp Sci, embraced by artist nerds WHAT IS IT? • A java-like programming language that makes Java apps... JAVA??!? • Isn’t that just for malware and exploits? PROCESSING 2.0 • Android • “Javascript” HTML5 canvas tag • processingjs.org WHAT DOES IT DO WHAT DOES IT DO WHAT DOES IT DO Text feltron report WHAT DOES IT DO WHAT DOES IT DO WHAT DOES IT DO WHAT DOES IT DO WHAT DOES IT DO http://tweetping.net/ WHAT DOES IT DO joshuadavis.com GENERATIVE ART • Art created by a set of rules. • Algorithmic art? CONNECTIONS • libraries • sound, video, animation, visualization, 3d, interface • http://processing.org/reference/libraries/ • hardware • kinect, arduino, sensors, cameras, serial devices, network, tablets, many screens, COMPETITORS • openFrameworks - www.openframeworks.cc • cinder - http://libcinder.org/ • max/msp - http://cycling74.com/ • vvvv - http://vvvv.org/ LEARNING PROCESSING • http://processing.org/learning/ • http://processing.org/reference/ • Books: • Learning Processing & The Nature of Code, Dan Shiffman • Processing: A Programming Handbook for Visual Designers and Artists, Reas & Fry INTRO void setup() { // runs once } void draw() { // runs 30fps... unless you tell it not to } DEMOS! • get excited. WHAT ELSE? • Anything you can do in Java you can do in Processing • libraries • syntax (oop, inheritance, etc) LEARN MORE • THE EXAMPLES MENU! • processing.org • creativeapplications.net PLUG • Teaching a processing course (“Creative Coding”) @ Kutztown this summer • M-T 1-5pm for all of June.