Basic ios development
|
|
- Marvin Barnett
- 7 years ago
- Views:
Transcription
1 Basic ios development The minimal ios appication "Keep it as small and simple as possible" - me, all the time Xcode, New Project -> Application -> Window Based Application, name it Minimal, and Save. What you see in xcode now is the plain iphone application. But there are still too many unnecessary things there. We are real programmers, we won't need the interface builder descriptor, so right click on MainWindow.xib, select delete, and move to trash. Open Minimal-Info.plist as plain text file, and delete the last key-string node from it ( with MSMainNibFile and MainWindow ). Let's remove Coregraphics.framework from frameworks, we don't need it. Right click on it, delete, move to trash. Let's check main.m. Delete NSAutoreleasePool initialization and the release lines, we are real programmers, we want total control, not autorelease sh*t. :) Without these two lines we can simplify this function, move UIApplicationMain init after return, and remove UIKit import from the top, its already in the prefix header. We also have to tell UIApplicationMain which is our Delegate class. The result should look like this : int main ( int countx, char *wordsx[ ] )! return UIApplicationMain( countx, wordsx, ); Let's check MinimalAppDelegate.h. Delete line, we don't want to set, get and synthesize the window. Also remove UIKit import. MinimalAppDelegate.m comes. window. Let's create it "manually". Normally it is synthesized based on the interface builder file, but we deleted that. Let's create an UIWindow instance with the screen's dimensions : window = [ [ UIWindow alloc ] initwithframe : [ [ UIScreen mainscreen ] bounds ] ]; The result MinimalAppDelegate - ( void ) applicationdidfinishlaunching : ( UIApplication* ) application! window = [ [ UIWindow alloc ] initwithframe : [ [ UIScreen mainscreen ] bounds ] ];! [ window makekeyandvisible ]; - ( void ) dealloc! [ window release ];! [ super dealloc ];
2 You can debug and run the application. Let's check the project's folder. We have three files in the root, the prefix, the plist and main.m, and two files for MinimalAppDelegate class under classes folder. If you do a release build, you will find that the size of the binary is bytes, so this seems the minimal size of a compiled application, of course you can short it with one-char method and attribute names, but it won't be readable then, so it won't be that simple to work with, and our first and only rule would be harmed. The minimal iphone opengl ES application We will need an opengl ES framework. Right click on Frameworks folder, Add -> Existing Frameworks, select an OpenGLES framework, click Add. If you don't know how to locate one, create a new opengles project, right click on OpenGLES.framework under frameworks, and check the full path. We also need the QuartzCore framework for CAEAGLLayer. Do as above. To show an opengl output, we need a core animation gl layer to bind the renderbuffer to, and UIView has this. So we need an UIView instance. But its not that simple, by default UIView's layer is a CALayer instance, but opengl context needs a CAEAGLLayer instance to work, so we have to mimic it. We need a new class which extends UIView, and we have to override UIView's "layerclass" class method definition. Right click on Classes, Add -> New File -> Objective-C class -> Next -> name it GLView.m, click Finish. Delete the #import from the header file. Extend it from GLView : UIView Only one thing is needed in the implementation file, the layerclass override GLView + ( Class ) layerclass return [ CAEAGLLayer class ]; So from now on it will tell that its layer is a caeagllayer instance. Great. We made two additional files for almost nothing. Quite a shitty solution from Apple. Yesokay, lets get back to MinimalAppDelegate. We have to instantiate our layer. We need a new property in the header :
3 GLView* glview; don't forget to import we also need to import the opengl ES1 extensions #import <OpenGLES/ES1/glext.h> The result : #import MinimalAppDelegate : NSObject! UIWindow*! window;! GLView*!! glview; And in the implementation we instantiate our newly created GLView class: glview = [ [ GLView alloc ] initwithframe : [ [ UIScreen mainscreen ] bounds ] ]; Lets add this view as a subview to the main window. [ window addsubview : glview ]; now we can create our opengl ES1 context. EAGLContext* context = [ [ EAGLContext alloc ] initwithapi : keaglrenderingapiopengles1 ]; Set it as the active context : [ EAGLContext setcurrentcontext : context ]; From now on we can work with the context. We need a color and a frame buffer. Let's generate names for them. GLuint colorbuffer; GLuint framebuffer; glgenframebuffersoes( 1, &framebuffer ); glgenrenderbuffersoes( 1, &colorbuffer ); Bind framebuffer as framebuffer, colorbuffer as renderbuffer. glbindframebufferoes( GL_FRAMEBUFFER_OES, framebuffer ); glbindrenderbufferoes( GL_RENDERBUFFER_OES, colorbuffer ); We have to attach the colorbuffer to the framebuffer as color attachment. glframebufferrenderbufferoes( GL_FRAMEBUFFER_OES, GL_COLOR_ATTACHMENT0_OES, GL_RENDERBUFFER_OES, colorbuffer );
4 The only thing left is binding glview's layer to opengl's renderbuffer. [ context renderbufferstorage : GL_RENDERBUFFER_OES fromdrawable : ( CAEAGLLayer * ) glview.layer ]; Now we can do something spectacular, for example, setting the background color to dark green. glclearcolor( 0,.3, 0, 1.0 ); glclear( GL_COLOR_BUFFER_BIT ); And display the render buffer : [ context presentrenderbuffer : GL_RENDERBUFFER_OES ]; Yaaaay! If you run/debug the application, you will see a beautiful dark green color on your opengl layer. ios opengl ES basics - textures as point sprites Let's go to the point in MinimalAppDelegate where we bind glview's layer to opengl's renderbuffer. [ context renderbufferstorage : GL_RENDERBUFFER_OES fromdrawable : ( CAEAGLLayer * ) glview.layer ]; So we want some texture. The simplest form of a texture in opengl is a point sprite. OpenGL maps the given texture to the wanted point with the wanted size. Sounds simple, and it is. First we have to load an image we want to use as a texture. Create a gradient sphere with alpha in a photo editor, save it as a transparent png. We use UIImage for loading the image. CGImageRef brushimage = [ UIImage imagenamed ].CGImage; We have to extract the raw byte data from the image, we use Core Foundation's DataGetBytePointer function to get the pointer to the byte array provided by CGImage's dataprovider. GLubyte* brushdata = ( GLubyte * ) CFDataGetBytePtr( CGDataProviderCopyData ( CGImageGetDataProvider ( brushimage ) ) ); We have it now, texture generation comes GLuint brushtexture; glgentextures( 1, &brushtexture ); glbindtexture( GL_TEXTURE_2D, brushtexture ); Let's set up a linear filter for the texture gltexparameteri( GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR ); And finally create the texture from our bytearray
5 glteximage2d( GL_TEXTURE_2D, 0, GL_RGBA, CGImageGetWidth( brushimage ), CGImageGetHeight( brushimage ), 0, GL_RGBA, GL_UNSIGNED_BYTE, brushdata ); Yaaay. Don't forget to free brushdata array. We have the texture, let's draw it as point sprites.we want to see smooth alpha transitions, so we have to enable alpha blending. glenable(gl_blend); glblendfunc(gl_src_alpha, GL_ONE); Let's set up the screen's dimensions for orthographic projection and for the viewport. glmatrixmode( GL_PROJECTION ); glorthof( 0, 320, 0, 480, -1, 1 ); glviewport( 0, 0, 320, 480 ); Enable 2D textures and point sprites. glenable( GL_TEXTURE_2D ); glenable( GL_POINT_SPRITE_OES ); gltexenvf(gl_point_sprite_oes, GL_COORD_REPLACE_OES, GL_TRUE ); Set up points for the sprites glpointsize( 100 ); GLfloat points [ ] = 130, 200, 100, 204 ; Enable vertex array for writing glenableclientstate(gl_vertex_array); Assign vertex pointer glvertexpointer( 2, GL_FLOAT, 0, points ); And finally, draw vertexes. gldrawarrays( GL_POINTS, 0, 2 ); And display renderbuffer. [ context presentrenderbuffer : GL_RENDERBUFFER_OES ]; Run/debug it, you'll see two beautiful intersecting clouds :D ios opengl ES basics - animation Lets move our point sprites around. We need a few instance variables for this in the header. We need an array of GLfloats to store coordinates, two float for storing the two particles directions, the EAGLContext, and a NSTimer for simulation/screen refresh. #import MinimalAppDelegate : NSObject
6 ! NSTimer*!timer;! UIWindow*! window;! GLView*! glview;! GLfloat*!points;! EAGLContext*! context;! float! anglea;! float! angleb; - ( void ) update; Go back to MinimalAppDelegate implementation. We have to remove the drawing part from the bottom of applicationdidfinishlaunching method. We have to setup movement variables and the timer there instead. anglea = ( float ) rand( ) / RAND_MAX * M_PI * 2; angleb = ( float ) rand( ) / RAND_MAX * M_PI * 2; points = malloc( sizeof( GLfloat ) * 4 ); points[ 0 ] = ( GLfloat ) rand( ) / RAND_MAX * 320; points[ 1 ] = ( GLfloat ) rand( ) / RAND_MAX * 480; points[ 2 ] = ( GLfloat ) rand( ) / RAND_MAX * 320; points[ 3 ] = ( GLfloat ) rand( ) / RAND_MAX * 480; // START TIMER timer = [ NSTimer scheduledtimerwithtimeinterval! : ( NSTimeInterval ) 1.0 / 20.0 target!!!!! : self selector!!!! ( update ) userinfo!!!! : nil repeats!!!! : YES ]; We have to move the drawing part to a separate function, which will be called by our NSTimer simultaneously. This will be "update". First we need to refresh particle positions. // modify direction anglea += ( float ) rand( ) / RAND_MAX * 1; angleb += ( float ) rand( ) / RAND_MAX * 1; // update position points[ 0 ] += sin( anglea ) * 10; points[ 1 ] += cos( anglea ) * 10; points[ 2 ] += sin( angleb ) * 10; points[ 3 ] += cos( angleb ) * 10; // check borders if ( points[0] > 320 points[0] < 0 points[1]> 480 points[1] < 0 ) anglea -= M_PI; if ( points[2] > 320 points[2] < 0 points[3]> 480 points[3] < 0 ) angleb -= M_PI; Then let's move the texture sprite drawing code below
7 // enable texturing glenable( GL_TEXTURE_2D ); // assig vertex pointer glvertexpointer( 2, GL_FLOAT, 0, points ); // set point size glpointsize( 150 ); // draw vertexes gldrawarrays( GL_POINTS, 0, 2 ); Then, to make things more spectacular, we darken the whole scene, and we get a nice "glowing trail" effect. We will draw a simple square with the help of a triangle strip, we will use vertex coloring, so we have to switch off textures, and enable color array access. The last part is : // disable texturing gldisable( GL_TEXTURE_2D ); // enable color array for writing glenableclientstate( GL_COLOR_ARRAY ); // define screen sized square with transparency GLfloat square [ ] = 0, 0, 0, 480, 320, 0, 320, 480 ; GLubyte colors [ ] = 0, 0, 0, 200, 0, 0, 0, 200, 0, 0, 0, 200, 0, 0, 0, 200 ; // assign vertex and color pointer glvertexpointer( 2, GL_FLOAT, 0, square ); glcolorpointer( 4, GL_UNSIGNED_BYTE, 0, colors ); // draw gldrawarrays( GL_TRIANGLE_STRIP, 0, 4 ); // disable color array before using texture gldisableclientstate( GL_COLOR_ARRAY ); // display renderbuffer content [ context presentrenderbuffer : GL_RENDERBUFFER_OES ]; If you move the darkening part before the sprite drawing, you get brighter glows, check it in the source
Methodology for Lecture. Review of Last Demo
Basic Geometry Setup Methodology for Lecture Make mytest1 more ambitious Sequence of steps Demo Review of Last Demo Changed floor to all white, added global for teapot and teapotloc, moved geometry to
More informationiphone Objective-C Exercises
iphone Objective-C Exercises About These Exercises The only prerequisite for these exercises is an eagerness to learn. While it helps to have a background in object-oriented programming, that is not a
More informationINTRODUCTION TO OBJECTIVE-C CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 12 09/29/2011
INTRODUCTION TO OBJECTIVE-C CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 12 09/29/2011 1 Goals of the Lecture Present an introduction to Objective-C 2.0 Coverage of the language will be INCOMPLETE
More informationios Development Tutorial Nikhil Yadav CSE 40816/60816: Pervasive Health 09/09/2011
ios Development Tutorial Nikhil Yadav CSE 40816/60816: Pervasive Health 09/09/2011 Healthcare iphone apps Various apps for the iphone available Diagnostic, Diet and Nutrition, Fitness, Emotional Well-being
More informationThis documentation is made available before final release and is subject to change without notice and comes with no warranty express or implied.
Hyperloop for ios Programming Guide This documentation is made available before final release and is subject to change without notice and comes with no warranty express or implied. Requirements You ll
More informationINTRODUCTION TO IOS CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 13 02/22/2011
INTRODUCTION TO IOS CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 13 02/22/2011 1 Goals of the Lecture Present an introduction to ios Program Coverage of the language will be INCOMPLETE We
More informationOpenGL Insights. Edited by. Patrick Cozzi and Christophe Riccio
OpenGL Insights Edited by Patrick Cozzi and Christophe Riccio Browser Graphics Analysis and Optimizations 36 Chris Dirks and Omar A. Rodriguez 36.1 Introduction Understanding performance bottlenecks in
More informationios App Development for Everyone
ios App Development for Everyone Kevin McNeish Table of Contents Chapter 2 Objective C (Part 6) Referencing Classes Now you re ready to use the Calculator class in the App. Up to this point, each time
More informationAdvanced Graphics and Animations for ios Apps
Tools #WWDC14 Advanced Graphics and Animations for ios Apps Session 419 Axel Wefers ios Software Engineer Michael Ingrassia ios Software Engineer 2014 Apple Inc. All rights reserved. Redistribution or
More informationCreating a Custom Class in Xcode
Creating a Custom Class in Xcode By Mark Mudri March 28, 2014 Executive Summary: Making an ios application requires the use of Xcode, an integrated development environment (IDE) developed by Apple. Within
More informationHow To Develop An App For Ios (Windows)
Mobile Application Development Lecture 14 ios SDK 2013/2014 Parma Università degli Studi di Parma Lecture Summary ios operating system ios SDK Tools of the trade ModelViewController MVC interaction patterns
More informationLearn iphone and ipad game apps development using ios 6 SDK. Beginning. ios 6 Games. Development. Lucas Jordan. ClayWare Games tm
Learn iphone and ipad game apps development using ios 6 SDK Beginning ios 6 Games Development Lucas Jordan ClayWare Games tm This book was purchased by dstannard@oregonmba.com For your convenience Apress
More informationYour First ios Application
Your First ios Application General 2011-06-06 Apple Inc. 2011 Apple Inc. All rights reserved. Some states do not allow the exclusion or limitation of implied warranties or liability for incidental or consequential
More informationHow To Draw A Billiards Ball In Gta 3D With Texture Mapping (Gta 3) On A Computer Or 2D Or Gta 2D (Gt) On Your Computer Or Computer Or Your Computer (Or Your Computer)
Pool Billiard An OpenGL-based billiard simulation Stefan HUBER Kamran SAFDAR Andreas SCHRÖCKER Fachbereich Computerwissenschaften Universität Salzburg June 10, 2009 S. Huber, K. Safdar, A. Schröcker: Pool
More informationImage Processing and Computer Graphics. Rendering Pipeline. Matthias Teschner. Computer Science Department University of Freiburg
Image Processing and Computer Graphics Rendering Pipeline Matthias Teschner Computer Science Department University of Freiburg Outline introduction rendering pipeline vertex processing primitive processing
More informationCross-Compiling Android Applications to the iphone
Cross-Compiling Android Applications to the iphone Arno Puder San Francisco State University arno@sfsu.edu The Team Core team: Arno Puder, SFSU Sascha Haeberling, Google Inc Wolfgang Korn, bluecarat AG
More informationFireworks 3 Animation and Rollovers
Fireworks 3 Animation and Rollovers What is Fireworks Fireworks is Web graphics program designed by Macromedia. It enables users to create any sort of graphics as well as to import GIF, JPEG, PNG photos
More informationGraphics Pipeline in a Nutshell
Graphics Pipeline in a Nutshell How do we create a rendering such as this? CS334 Spring 2008 Design the scene (technical drawing in wireframe ) Apply perspective transformations to the scene geometry for
More informationAndroid and OpenGL. Android Smartphone Programming. Matthias Keil. University of Freiburg
Android and OpenGL Android Smartphone Programming Matthias Keil Institute for Computer Science Faculty of Engineering 16. Dezember 2013 Outline 1 OpenGL Introduction 2 Displaying Graphics 3 Interaction
More informationView Controller Programming Guide for ios
View Controller Programming Guide for ios Contents About View Controllers 10 At a Glance 11 A View Controller Manages a Set of Views 11 You Manage Your Content Using Content View Controllers 11 Container
More informationApplication Programming on the Mac COSC346
Application Programming on the Mac COSC346 OS X Application An application is a complex system made of many subcomponents Graphical interface Event handling Multi-threading Data processing Storage 2 Cocoa
More informationObjective C and iphone App
Objective C and iphone App 6 Months Course Description: Understanding the Objective-C programming language is critical to becoming a successful iphone developer. This class is designed to teach you a solid
More informationOpenGL & Delphi. Max Kleiner. http://max.kleiner.com/download/openssl_opengl.pdf 1/22
OpenGL & Delphi Max Kleiner http://max.kleiner.com/download/openssl_opengl.pdf 1/22 OpenGL http://www.opengl.org Evolution of Graphics Assembler (demo pascalspeed.exe) 2D 3D Animation, Simulation (Terrain_delphi.exe)
More informationPraktikum Entwicklung von Mediensystemen mit ios
Praktikum Entwicklung von Mediensystemen mit ios SS 2011 Michael Rohs michael.rohs@ifi.lmu.de MHCI Lab, LMU München Timeline Date Topic/Activity 5.5.2011 Introduction and Overview of the ios Platform 12.5.2011
More informationAbout the Tutorial. Audience. Prerequisites. Copyright & Disclaimer
About the Tutorial ios is a mobile operating system developed and distributed by Apple Inc. It was originally released in 2007 for the iphone, ipod Touch, and Apple TV. ios is derived from OS X, with which
More informationIntroduction to Objective-C. Kevin Cathey
Introduction to Objective-C Kevin Cathey Introduction to Objective-C What are object-oriented systems? What is the Objective-C language? What are objects? How do you create classes in Objective-C? acm.uiuc.edu/macwarriors/devphone
More informationXcode Project Management Guide. (Legacy)
Xcode Project Management Guide (Legacy) Contents Introduction 10 Organization of This Document 10 See Also 11 Part I: Project Organization 12 Overview of an Xcode Project 13 Components of an Xcode Project
More informationIm360 SDK ios v5.x and newer
im360 ios Mobile PDF generated using the open source mwlib toolkit. See http://code.pediapress.com/ for more information. PDF generated at: Thu, 13 Feb 2014 01:54:30 UTC Im360 SDK ios v5.x and newer 1
More informationQCD as a Video Game?
QCD as a Video Game? Sándor D. Katz Eötvös University Budapest in collaboration with Győző Egri, Zoltán Fodor, Christian Hoelbling Dániel Nógrádi, Kálmán Szabó Outline 1. Introduction 2. GPU architecture
More informationShader Model 3.0. Ashu Rege. NVIDIA Developer Technology Group
Shader Model 3.0 Ashu Rege NVIDIA Developer Technology Group Talk Outline Quick Intro GeForce 6 Series (NV4X family) New Vertex Shader Features Vertex Texture Fetch Longer Programs and Dynamic Flow Control
More informationWeb Editing Tutorial. Copyright 1995-2010 Esri All rights reserved.
Copyright 1995-2010 Esri All rights reserved. Table of Contents Tutorial: Creating a Web editing application........................ 3 Copyright 1995-2010 Esri. All rights reserved. 2 Tutorial: Creating
More informationOpenGL Performance Tuning
OpenGL Performance Tuning Evan Hart ATI Pipeline slides courtesy John Spitzer - NVIDIA Overview What to look for in tuning How it relates to the graphics pipeline Modern areas of interest Vertex Buffer
More informationOpenGL "Hello, world!"
OpenGL "Hello, world!" by Ian Romanick This work is licensed under the Creative Commons Attribution Non-commercial Share Alike (by-nc-sa) License. To view a copy of this license, (a) visit http://creativecommons.org/licenses/by-nc-sa/3.0/;
More informationBlender Notes. Introduction to Digital Modelling and Animation in Design Blender Tutorial - week 9 The Game Engine
Blender Notes Introduction to Digital Modelling and Animation in Design Blender Tutorial - week 9 The Game Engine The Blender Game Engine This week we will have an introduction to the Game Engine build
More informationMaking natural looking Volumetric Clouds In Blender 2.48a
I think that everyone using Blender has made some trials about making volumetric clouds. The truth is that a kind of volumetric clouds is already available in Blender for a long time, thanks to the 3D
More informationA product of Byte Works, Inc. http://www.byteworks.us. Credits Programming Mike Westerfield. Art Karen Bennett. Documentation Mike Westerfield
A product of Byte Works, Inc. http://www.byteworks.us Credits Programming Mike Westerfield Art Karen Bennett Documentation Mike Westerfield Copyright 2013 By The Byte Works, Inc. All Rights Reserved Apple,
More informationWebsite Builder Overview
Website Builder Overview The Website Builder tool gives users the ability to create and manage their own website, which can be used to communicate with students and parents outside of the classroom. Users
More informationTutorial 9: Skeletal Animation
Tutorial 9: Skeletal Animation Summary In the last couple of tutorials, you ve seen how to create a scene graph, and implemented a simple animating cube robot using them. You re probably wondering how
More informationStart Developing ios Apps Today
Start Developing ios Apps Today Contents Introduction 6 Setup 7 Get the Tools 8 Review a Few Objective-C Concepts 9 Objects Are Building Blocks for Apps 9 Classes Are Blueprints for Objects 9 Objects Communicate
More informationAppendix K Introduction to Microsoft Visual C++ 6.0
Appendix K Introduction to Microsoft Visual C++ 6.0 This appendix serves as a quick reference for performing the following operations using the Microsoft Visual C++ integrated development environment (IDE):
More informationYour First App Store Submission
Your First App Store Submission Contents About Your First App Store Submission 4 At a Glance 5 Enroll in the Program 5 Provision Devices 5 Create an App Record in itunes Connect 5 Submit the App 6 Solve
More informationStar Micronics Cloud Services ios SDK User's Manual
Star Micronics Cloud Services ios SDK User's Manual General Outline This document provides information about the Star Micronics Cloud Services ios SDK, showing guidelines for our customers to build the
More informationBlender addons ESRI Shapefile import/export and georeferenced raster import
Blender addons ESRI Shapefile import/export and georeferenced raster import This blender addon is a collection of 4 tools: ESRI Shapefile importer - Import point, pointz, polyline, polylinez, polygon,
More informationCharacter Creation You can customize a character s look using Mixamo Fuse:
Using Mixamo Fuse, Mixamo, and 3ds Max, you can create animated characters for use with FlexSim. Character Creation You can customize a character s look using Mixamo Fuse: After creating the character,
More informationSprite Kit Programming Guide
Sprite Kit Programming Guide Contents About Sprite Kit 9 At a Glance 10 Sprite Content is Drawn by Presenting Scenes Inside a Sprite View 11 A Node Tree Defines What Appears in a Scene 11 Textures Hold
More informationAston University. School of Engineering & Applied Science
CS2150 Aston University School of Engineering & Applied Science CS2150: Computer Graphics January Examinations 2010 Date: XXX Time: XXX Instructions to Candidates: 1. Answer Question ONE and any other
More informationThe OpenGL Framebuffer Object Extension. Simon Green. NVIDIA Corporation
The OpenGL Framebuffer Object Extension Simon Green NVIDIA Corporation Overview Why render to texture? P-buffer / ARB render texture review Framebuffer object extension Examples Future directions Why Render
More informationInteraction. Triangles (Clarification) Choice of Programming Language. Display Lists. The CPU-GPU bus. CSCI 480 Computer Graphics Lecture 3
CSCI 480 Computer Graphics Lecture 3 Triangles (Clarification) Interaction January 18, 2012 Jernej Barbic University of Southern California http://www-bcf.usc.edu/~jbarbic/cs480-s12/ [Angel Ch. 3] 1 Can
More informationDevelopment of Computer Graphics and Digital Image Processing on the iphone Luciano Fagundes (luciano@babs2go.com.
Development of Computer Graphics and Digital Image Processing on the iphone Luciano Fagundes (luciano@babs2go.com.br) Rafael Santos (rafael.santos@lac.inpe.br) Motivation ios Devices Dev Basics From Concept
More informationBeginning Android 4. Games Development. Mario Zechner. Robert Green
Beginning Android 4 Games Development Mario Zechner Robert Green Contents Contents at a Glance About the Authors Acknowledgments Introduction iv xii xiii xiv Chapter 1: Android, the New Kid on the Block...
More informationios Dev Crib Sheet In the Shadow of C
ios Dev Crib Sheet As you dive into the deep end of the ios development pool, the first thing to remember is that the mother ship holds the authoritative documentation for this endeavor http://developer.apple.com/ios
More informationNVFX : A NEW SCENE AND MATERIAL EFFECT FRAMEWORK FOR OPENGL AND DIRECTX. TRISTAN LORACH Senior Devtech Engineer SIGGRAPH 2013
NVFX : A NEW SCENE AND MATERIAL EFFECT FRAMEWORK FOR OPENGL AND DIRECTX TRISTAN LORACH Senior Devtech Engineer SIGGRAPH 2013 nvfx : Plan What is an Effect New Approach and new ideas of nvfx Examples Walkthrough
More informationThe Rocket Steam Locomotive - Animation
Course: 3D Design Title: Rocket Steam Locomotive - Animation Blender: Version 2.6X Level: Beginning Author; Neal Hirsig (nhirsig@tufts.edu) (May 2012) The Rocket Steam Locomotive - Animation In this tutorial
More informationPlease note that this SDK will only work with Xcode 3.2.5 or above. If you need an SDK for an older Xcode version please email support.
Mobile Application Analytics ios SDK Instructions SDK version 3.0 Updated: 12/28/2011 Welcome to Flurry Analytics! This file contains: 1. Introduction 2. Integration Instructions 3. Optional Features 4.
More informationHow To Use An Amd Graphics Card In Greece 2.5.1 And 2.4.1 (Amd) With Greege 2.3.5 (Greege) With An Amd Greeper 2.2.
AMD GPU Association Targeting GPUs for Load Balancing in OpenGL The contents of this document are provided in connection with Advanced Micro Devices, Inc. ( AMD ) products. THE INFORMATION IN THIS PUBLICATION
More informationSweet Home 3D user's guide
1 de 14 08/01/2013 13:08 Features Download Online Gallery Blog Documentation FAQ User's guide Video tutorial Developer's guides History Reviews Support 3D models Textures Translations Forum Report a bug
More informationMovieClip, Button, Graphic, Motion Tween, Classic Motion Tween, Shape Tween, Motion Guide, Masking, Bone Tool, 3D Tool
1 CEIT 323 Lab Worksheet 1 MovieClip, Button, Graphic, Motion Tween, Classic Motion Tween, Shape Tween, Motion Guide, Masking, Bone Tool, 3D Tool Classic Motion Tween Classic tweens are an older way of
More informationOpenGL Insights. Edited by. Patrick Cozzi and Christophe Riccio
OpenGL Insights Edited by Patrick Cozzi and Christophe Riccio ARB debug output: A Helping Hand for Desperate Developers 33 António Ramires Fernandes and Bruno Oliveira 33.1 Introduction Since the inception
More information4D Plugin SDK v11. Another minor change, real values on 10 bytes is no longer supported.
4D Plugin SDK v11 4D Plugin API 4D Plugin API v11 is a major upgrade of 4D Plugin API. The two major modifications are that it is now fully Unicode compliant, and that it gives support to the new 4D pictures.
More informationMaya 2014 Still Life Part 1 Texturing & Lighting
Maya 2014 Still Life Part 1 Texturing & Lighting Realistic lighting and texturing is the key to photorealism in your 3D renders. Objects and scenes with relatively simple geometry can look amazing with
More informationPraktikum Entwicklung von Mediensystemen mit
Praktikum Entwicklung von Mediensystemen mit Wintersemester 2013/2014 Christian Weiß, Dr. Alexander De Luca Today Organization Introduction to ios programming Hello World Assignment 1 2 Organization 6
More informationOverview of the Adobe Flash Professional CS6 workspace
Overview of the Adobe Flash Professional CS6 workspace In this guide, you learn how to do the following: Identify the elements of the Adobe Flash Professional CS6 workspace Customize the layout of the
More informationHands-On Lab. Building a Data-Driven Master/Detail Business Form using Visual Studio 2010. Lab version: 1.0.0. Last updated: 12/10/2010.
Hands-On Lab Building a Data-Driven Master/Detail Business Form using Visual Studio 2010 Lab version: 1.0.0 Last updated: 12/10/2010 Page 1 CONTENTS OVERVIEW... 3 EXERCISE 1: CREATING THE APPLICATION S
More informationios App Development for Everyone
ios App Development for Everyone Kevin McNeish Table of Contents Chapter 2 Objective C (Part 1) When I first started writing ios Apps, coding in Objective-C was somewhat painful. Like stuck-in-acheckout-line-behind-the-old-woman-writing-a-personal-check
More informationQuick Start Guide Simple steps for editing and manipulating your photo.
PhotoPlus Quick Start Guide Simple steps for editing and manipulating your photo. In this guide, we will refer to specific tools, toolbars, tabs, or menus. Use this visual reference to help locate them
More informationAn Introduction to. Graphics Programming
An Introduction to Graphics Programming with Tutorial and Reference Manual Toby Howard School of Computer Science University of Manchester V3.3, January 13, 2010 Contents 1 About this manual 1 1.1 How
More informationIV3Dm provides global settings which can be set prior to launching the application and are available through the device settings menu.
ImageVis3D Mobile This software can be used to display and interact with different kinds of datasets - such as volumes or meshes - on mobile devices, which currently includes iphone and ipad. A selection
More informationTakeMySelfie ios App Documentation
TakeMySelfie ios App Documentation What is TakeMySelfie ios App? TakeMySelfie App allows a user to take his own picture from front camera. User can apply various photo effects to the front camera. Programmers
More informationAn Introduction to Modern Software Development Tools Creating A Simple GUI-Based Tool Appleʼs XCode Version 3.2.6
1 2 3 4 An Introduction to Modern Software Development Tools Creating A Simple GUI-Based Tool Appleʼs XCode Version 3.2.6 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Charles J. Ammon / Penn State August, 2011
More informationOpen icon. The Select Layer To Add dialog opens. Click here to display
Mosaic Introduction This tour guide gives you the steps for mosaicking two or more image files to produce one image file. The mosaicking process works with rectified and/or calibrated images. Here, you
More informationCopyright 2010 The Pragmatic Programmers, LLC.
Extracted from: ipad Programming A Quick-Start Guide for iphone Developers This PDF file contains pages extracted from ipad Programming, published by the Pragmatic Bookshelf. For more information or to
More informationMA-WA1920: Enterprise iphone and ipad Programming
MA-WA1920: Enterprise iphone and ipad Programming Description This 5 day iphone training course teaches application development for the ios platform. It covers iphone, ipad and ipod Touch devices. This
More informationCreating OpenGL applications that use GLUT
Licenciatura em Engenharia Informática e de Computadores Computação Gráfica Creating OpenGL applications that use GLUT Short guide to creating OpenGL applications in Windows and Mac OSX Contents Obtaining
More informationKnappsack ios Build and Deployment Guide
Knappsack ios Build and Deployment Guide So you want to build and deploy an ios application to Knappsack? This guide will help walk you through all the necessary steps for a successful build and deployment.
More informationGraphic Objects and Loading Them into TGF2/MMF2
Graphic Objects and Loading Them into TGF2/MMF2 There are a couple of ways of ensuring graphics appear in a game. Types of objects you can use: Active Object: Consider the active object any image that
More informationThe mouse callback. Positioning. Working with Callbacks. Obtaining the window size. Objectives
Objectives Working with Callbacks Learn to build interactive programs using GLUT callbacks - Mouse - Keyboard - Reshape Introduce menus in GLUT The mouse callback glutmousefunc(mymouse) void mymouse(glint
More informationPublishing Geoprocessing Services Tutorial
Publishing Geoprocessing Services Tutorial Copyright 1995-2010 Esri All rights reserved. Table of Contents Tutorial: Publishing a geoprocessing service........................ 3 Copyright 1995-2010 ESRI,
More informationChapter 1. Xcode Projects
Chapter 1 Xcode Projects Every program you create in Xcode requires a project, even a simple command-line program with one file. Because every program requires a project, covering projects is a good way
More informationFinger Paint: Cross-platform Augmented Reality
Finger Paint: Cross-platform Augmented Reality Samuel Grant Dawson Williams October 15, 2010 Abstract Finger Paint is a cross-platform augmented reality application built using Dream+ARToolKit. A set of
More informationgeniusport mobility training experts
geniu po About Geniusport: GeniusPort is a Pioneer and India's No. 1 Training Center for Mobile Technologies like Apple ios, Google Android and Windows 8 Applications Development. A one stop destination
More informationScripting in Unity3D (vers. 4.2)
AD41700 Computer Games Prof. Fabian Winkler Fall 2013 Scripting in Unity3D (vers. 4.2) The most basic concepts of scripting in Unity 3D are very well explained in Unity s Using Scripts tutorial: http://docs.unity3d.com/documentation/manual/scripting42.html
More informationSecrets of Event Viewer for Active Directory Security Auditing Lepide Software
Secrets of Event Viewer for Active Directory Security Auditing Windows Event Viewer doesn t need any introduction to the IT Administrators. However, some of its hidden secrets, especially those related
More informationios App Performance Things to Take Care
ios App Performance Things to Take Care Gurpreet Singh Sachdeva Engineering Manager @ Yahoo Who should attend this session? If you are developing or planning to develop ios apps and looking for tips to
More informationLionPATH Mobile: Android
LionPATH Mobile: Android LionPATH Mobile lets you use your mobile device to view class and grade information. The LionPATH Mobile app is available in the public app store for Android. Installation will
More informationHOW TO LINK AND PRESENT A 4D MODEL USING NAVISWORKS. Timo Hartmann t.hartmann@ctw.utwente.nl
Technical Paper #1 HOW TO LINK AND PRESENT A 4D MODEL USING NAVISWORKS Timo Hartmann t.hartmann@ctw.utwente.nl COPYRIGHT 2009 VISICO Center, University of Twente visico@utwente.nl How to link and present
More informationIllustration 1: Diagram of program function and data flow
The contract called for creation of a random access database of plumbing shops within the near perimeter of FIU Engineering school. The database features a rating number from 1-10 to offer a guideline
More informationios Audio Programming Guide
ios Audio Programming Guide A Guide to Developing Applications for Real-time Audio Processing and Playback izotope, Inc. izotope ios Audio Programming Guide This document is meant as a guide to developing
More informationAssignment I Walkthrough
Assignment I Walkthrough Objective Reproduce the demonstration (building a calculator) given in class. Goals 1. Downloading and installing the ios4 SDK. 2. Creating a new project in Xcode. 3. Defining
More informationIntroduction to iphone Development
Introduction to iphone Development Introduction to iphone Development Contents Task 1 2 3 4 Application Runtime Core Architecture and Life-cycles What s in a bundle? The resources in an app bundle Customizing
More informationOptimizing AAA Games for Mobile Platforms
Optimizing AAA Games for Mobile Platforms Niklas Smedberg Senior Engine Programmer, Epic Games Who Am I A.k.a. Smedis Epic Games, Unreal Engine 15 years in the industry 30 years of programming C64 demo
More informationwww.virtualians.pk CS506 Web Design and Development Solved Online Quiz No. 01 www.virtualians.pk
CS506 Web Design and Development Solved Online Quiz No. 01 Which of the following is a general purpose container? JFrame Dialog JPanel JApplet Which of the following package needs to be import while handling
More informationLinear Referencing Tutorial
Copyright 1995-2010 Esri All rights reserved. Table of Contents An overview of the linear referencing tutorial........................ 3 Exercise 1: Organizing your linear referencing data in ArcCatalog...............
More informationUnit and Functional Testing for the ios Platform. Christopher M. Judd
Unit and Functional Testing for the ios Platform Christopher M. Judd Christopher M. Judd President/Consultant of leader Columbus Developer User Group (CIDUG) Remarkable Ohio Free Developed for etech Ohio
More informationWorking With Animation: Introduction to Flash
Working With Animation: Introduction to Flash With Adobe Flash, you can create artwork and animations that add motion and visual interest to your Web pages. Flash movies can be interactive users can click
More informationEmbedded Systems. Review of ANSI C Topics. A Review of ANSI C and Considerations for Embedded C Programming. Basic features of C
Embedded Systems A Review of ANSI C and Considerations for Embedded C Programming Dr. Jeff Jackson Lecture 2-1 Review of ANSI C Topics Basic features of C C fundamentals Basic data types Expressions Selection
More informationCopyright 2006 TechSmith Corporation. All Rights Reserved.
TechSmith Corporation provides this manual as is, makes no representations or warranties with respect to its contents or use, and specifically disclaims any expressed or implied warranties or merchantability
More informationMicroStation V8i Training Manual 3D Level 3
You are viewing sample pages from our textbook: MicroStation V8i Training Manual 3D Level 3 The sample subject matter includes pages from Modules 15 and 17, and range from material assignments and attachment,
More informationCustomizing Confirmation Text and Emails for Donation Forms
Customizing Confirmation Text and Emails for Donation Forms You have complete control over the look & feel and text used in your donation confirmation emails. Each form in Sphere generates its own confirmation
More informationPraktikum Entwicklung von Mediensystemen mit ios
Praktikum Entwicklung von Mediensystemen mit ios WS 2011 Prof. Dr. Michael Rohs michael.rohs@ifi.lmu.de MHCI Lab, LMU München Today Alerts, Action Sheets, text input Application architecture Table views
More information