Forum Nokia
Nokia Connecting People

Login Register

 

Home: Resources: Technologies: Symbian: Documentation: Symbian/C++ Documentation: Graphics

Symbian/C++ Documentation

Areas of interest

Graphics - S60/Symbian C++

02-Oct-2008

S60 5th Edition: Solitaire Game Example
This C++ example application demonstrates a fully touch-optimized application using various touch UI features of S60 5th Edition with direct manipulation. Besides tapping the cards, the user can drag and drop them using a finger or the stylus. The application demonstrates handling pointer events of custom UI controls. Also tactile feedback is used. Double buffering is used to draw on the screen to avoid flickering. The cards are by default implemented as SVG icons but the example also provides an option to draw them using methods of the graphics context class. Important classes: CCoeControl, MTouchFeedback, CFbsBitmap, CWindowGc.

02-Oct-2008

S60 Platform: Scalable UI Example
This C++ example application (Noughts and Crosses) demonstrates the scalable UI and SVG-T icons. The example has been updated to support touch UI. It has been designed to work on all devices from S60 3rd Edition onwards and it supports different screen sizes, orientations, and both the touch UI and a traditional keypad.

02-Oct-2008

S60 Platform: Scalable Screen-Drawing Example
This C++ application demonstrates scalable screen drawing with Direct Screen Access and custom drawing routines using SVG-T icons and bitmaps. The application scales to multiple display resolutions in portrait and landscape orientations supported by the S60 platform. This example is targeted especially at games and multimedia developers who prefer developing a custom UI instead of using an automatically scaling UI, such as S60 Avkon components. Labeling for the middle softkey has been added in the updated version. The application supports middle-softkey labeling and it has been updated to be compatible with S60 5th Edition and touch UI. Important classes: CIconFileProvider, MDirectScreenAccess, MAknIconFileProvider, CCoeControl (HandleResourceChange() method and KEikDynamicLayoutVariantSwitch), CEikAppUi (ApplicationRect(), Orientation(), and SetOrientationL() methods), AknLayoutUtils (PenEnabled() method).

13-Jun-2008

S60 Platform: 3D Game Engine Example with Sensor Support
This C++ example application demonstrates a simple 3D engine. The engine produces a simple car game where you can drive a car around a wide parking lot. Everything seen on the screen is rendered in 3D. The example utilizes OpenGL ES and the application dynamically scales on all screen sizes of S60 devices.

01-Oct-2007

Best Practices for HW-Accelerated Graphics Optimization
Learn how to use the OpenGL ES API to render 3D graphics in an efficient way in hardware-accelerated Nokia devices based on S60 3rd Edition and 3rd Edition, Feature Pack 1 (for example, Nokia N93, Nokia N93i, Nokia N95, and Nokia E90). Graphics hardware in the accelerated devices is many times faster than a SW-based implementation. However, certain simple principles in the OpenGL ES API usage need to be followed to get the best performance. The document provides some dos and don’ts to optimize the performance of the application. In addition, a texture conversion tool and a demo application are provided in the package.

10-May-2007

S60 Platform: 2D Game Engine Example
This C++ code example demonstrates an application with custom 2D graphics. The application is designed to support various S60 devices with different amounts of colors and various screen resolutions and orientations. The application implements a simple 2D game with some basic game features (audio on/off, on-screen menu). The code example is based on an earlier published Symbian OS: 2D Game Engine Example, which supports, for example, S60 2nd Edition and Series 80 2nd Edition. Main classes: CFbsBitmap, RBackedupWindow.

23-Mar-2007

Symbian OS: 3D Game Engine Example v1.2
This C++ code example demonstrates a simple 3D engine. The engine produces a simple game where you can drive a car around a wide parking lot. Everything seen on the screen is rendered in 3D. The example utilizes OpenGL ES (supported from S60 2nd Edition, Feature Pack 2 onwards) and an own rendering implementation for platforms not supporting OpenGL ES. This example supports S60 2nd Edition and Series 80 2nd Edition devices. A separate example is available for S60 3rd Edition at www.forum.nokia.com. Main classes: OpenGL ES (API), CIdle, Math, CImageDecoder, CAknKeySoundSystem.

31-Jan-2007

S60 Platform: Isometric Adventure Game Example
This C++ code example demonstrates isometric content creation and usage of standard C/C++ libraries. The example also shows how to structure memory usage and how game state and resources can be freed / restored during run time. The key audience is considered to be C++ game developers who have developed games for desktop computers and also want to expand to S60 devices. The generic game architecture design considerations for mobile platforms are applicable to all game developers, or those interested in becoming (mobile) game developers. The package includes a game design document. General isometric game development issues are described in the Designing Isometric Adventure Games document that is available at www.forum.nokia.com.

23-Feb-2006

S60 Platform: Scalable Screen-Drawing How-To
This document describes how to develop C++ applications with custom graphics that scale to multiple display resolutions in portrait and landscape orientations supported by the S60 platform (from S60 2nd Edition, Feature Pack 3 onwards). Direct screen access, bitmaps, scalable vector graphics, and other drawing methods are compared and related APIs are presented. The document includes code snippets from S60 Platform: Scalable Screen-Drawing Example. This document is targeted especially at games and multimedia developers who prefer developing a custom UI instead of using the automatically scaling UI, such as S60 Avkon components.

23-Feb-2006

S60 Platform: Vector Graphics Optimization
This document gives instructions for optimizing vector graphics for the S60 3rd Edition user interface. The S60 3rd Edition SVG rasterizing engine supports the SVG Tiny 1.1 standard with additional support for line and fill opacity and gradient.

01-Feb-2005

S60 2nd Edition Feature Pack 2: OpenGL ES 3D Example
This is a simple example of how to create OpenGL 3D graphics with Symbian OS and OpenGL ES.

10-Jan-2005

S60 Platform: Introduction to 3D Graphics in C++ (with Example) v1.1
This updated document provides an introduction to rendering 3D graphics on S60 devices using C++. Sample code is included in the package.

02-Oct-2003

2-D Game Animation Techniques in C++ for Series 60
This paper demonstrates how to implement a scrolling tiled background and sprite animation in C++ for Series 60 Symbian OS devices, and provides a sample application on which developers can build.

Learn how to
download applications

java symbian_os s60 maemo c++

Community highlights

Discussion thread of the week

S60 5th Ed UI Touch and Sensors

Champion of the month

Xiaotian Chen
Read more about
Xiaotian on the
Champions web site.

Newsletter sign up

Privacy policy   Archives

Press

Events

Forum Nokia feed

  • Latest devices
  • Latest documents
  • Latest tools
  • Latest blog entries

Terms & Conditions | Privacy policy | Site map | Developer feedback | © Nokia 2008


RDF Facets:


qdcZcoverageQUxhttpE3AE2FE2FforumE2EnokiaE2EcomE2FX
qdcZtypeQUqfnZE45E78cludedFromGeneralE4CistingsQ
qdcZtypeQUqfnTypeZE52esourceQ
qdcZtypeQUqfnTypeZWebpageQ
qdcZtypeQUqmarsZManagedE52esourceQ
qdcZtypeQUqwebZInformationE52esourceQ
qdcZtypeQUqwebZPageQ
qdcZtypeQUqrdfsZE52esourceQ
qfnZdistributionQUxhttpE3AE2FE2FforumE2EnokiaE2EcomE2FX
qfnZtypeQUqfnTypeZE52esourceQ
qfnZtypeQUqfnTypeZWebpageQ
qfnZtypeQUqmarsZManagedE52esourceQ
qfnZtypeQUqwebZInformationE52esourceQ
qfnZtypeQUqwebZPageQ
qfnZtypeQUqrdfsZE52esourceQ
qmarsZlanguageQUxhttpE3AE2FE2FswE2EnokiaE2EcomE2FlanguageE2D1E2FenX
qrdfZtypeQUqfnZE45E78cludedFromGeneralE4CistingsQ
qrdfZtypeQUqfnTypeZE52esourceQ
qrdfZtypeQUqfnTypeZWebpageQ
qrdfZtypeQUqmarsZManagedE52esourceQ
qrdfZtypeQUqwebZInformationE52esourceQ
qrdfZtypeQUqwebZPageQ
qrdfZtypeQUqrdfsZE52esourceQ