Showing posts with label Flash development India. Show all posts
Showing posts with label Flash development India. Show all posts

22 March, 2013

Key components required to develop a Flash Game


Online gaming industry has been growing exponentially since the 90s when it became very popular. As of 2011 the worldwide online gaming revenue was around $11-12 billion dollars, which shows how serious a business it is. Lot of companies is into developing online games and the easiest and preferred technology used for building games is Flash. We at Mindfire have been involved in games development for a long time now. The online game development team at Mindfire has developed a wide variety of Flash based games – the following link Flash game development @ Mindfire shows some of the games built by us.

Given below is a small write up on 2 basic areas of game development – Key components required in a game AND basic game development workflow. 

Key components required in a game

The following are a few key components required in a game:

Input: Input refers to how the game is controlled by the user. Typically simpler games are controlled with the mouse, the keyboard arrow keys, or both. For mobile device based games, touch gestures are the most common input method, and the Flash Platform has robust touch support.

Sprites: Sprites are the visual elements on screen, such as a MovieClip of a spaceship or a biplane in a flying game.

Sounds: Good sounds for specific events in a game are a very vital part of any game. They just add tremendous value in terms of user engagement in the game.

Collision detection: This is the code that senses when any two sprites touch on screen, which is crucial for most action-oriented games.

Game loop: This is a term sometimes used by game developers to describe the programming logic that controls the game experience. ActionScript is the programming language used to execute the game loop in Flash games. In ActionScript 3.0, there are two ways of calling a function at specific intervals. The first approach is to use the Event. ENTER_FRAME event dispatched by interactive objects (InteractiveObject). The second approach is to use a timer. The ENTER_FRAME event approach is more common, and is best used for very frequently updates such as animation, other rendering updates, and artificial intelligence (AI) routines. A timer can behave in a similar way to an ENTER_FRAME event, but an event can be dispatched without being tied to the frame rate. Timer is best for periods of time that are several seconds or more in duration. Like other programming languages, ActionScript also provides numerous other techniques to accomplish the game loop, such as for and while loops.

Game development workflow

Given below are the simple basic steps that every game developer adheres to when developing a new game:


  • Brainstorm. Ideate, discuss and debate till a final conclusive idea for the game is developed. 
  • Develop. This is the phase when the actual game is developed. The major chunk of the time is spent in this phase. 
  • Test and optimize. Continuous testing is required to ensure that the game is bug-free and fun to play. Performance improvement is one thing that is taken care of in this phase.
  • Distribute and monetize. After the game is finally developed it needs to be marketed properly, so that real players (users) get to know and play the demo version and finally buy it. 
  • Use analytics. Analysis of user feedback and metrics such as game plays, duration of game play, and more needs to be done regularly to improve the game further. 
  • Update. All the above steps except step 4 needs to be done regularly to ensure the game quality keeps improving and more and more users start playing and enjoying it. 


At Mindfire we follow the above mentioned approach to build games, have a look at the projects page to see some of the games developed by us. The flash application development team at Mindfire is a group of enthusiastic programmers who are crazy about games and don’t lose an opportunity to grab one to play with or get started to build one. 

To know more about our expertise in flash application development and to hire flash developers, please contact us at sales [at] mindfiresolutions [dot] com or call 1-248-686-1424. We will be glad to help you.

21 March, 2013

Flash CS5 for on-demand video delivery


Flash CS5 professional enables on-demand video delivery in the following 3 ways:
  1. Using embedded video within SWF files
  2. Using progressive download FLV files and
  3. Streaming video from in house Flash Media Server or from a hosted server using Flash Video Streaming Services.
At Mindfire we have developed video player applications using all of the three approaches. Our Flash application development team are good at understanding the client need and building suitable application to meet the client needs. You can have a look at the projects  we have done in Flash video player to know about our expertise.

In this article I will present the list of features of the first method ,i.e. using embedded video within SWF files under the following categories: Encoding, File size, Timeline access, Publishing, Frame rate, Actionscript access, Web delivery, Performance, Usage and Compatibility. I have got the details from adobe.com website.

Encoding
By default, the Video Import Wizard prompts you to launch the Adobe Media Encoder if needed to encode video using the On2 VP6 video codec for use with Flash Player 8 and later. Alternatively, FLV files (encoded elsewhere using On2 VP6 or Sorenson Spark codecs) can be imported and placed on the Timeline (re-encoding is not necessary). F4V and H.264 files cannot be embedded on the Timeline.

File Size
SWF files contain video and audio streams and the user interface, resulting in a single, larger file size. SWF files can load each other, enabling you to break up individual video clips into multiple files.

Timeline access
When embedded in the Timeline, video appears on individual keyframes and can be treated like any other object on the Stage. Ideal for creating interactions based on individual keyframes of video.

Publishing
Each time the content is published or tested the entire video file is republished. Changes to video files require manually re-importing the files into the Timeline.

Frame Rate
Video frame rate and SWF frame rate must be the same.

Actionscript access
Video playback and control is achieved by controlling the SWF content's playback on the Timeline. Flash Professional CS5 provides several code snippets designed to control video, audio, and timeline playback in an ActionScript 3 file.

Web Delivery
The SWF file progressively downloads, unless you embed it in a movie clip. In that case, the entire video must be downloaded to the client and loaded into memory before it plays back.

Performance
Audio and video synchronization is limited after approximately 120 seconds of video. Total file duration is limited to available RAM on the playback system.

Usage
Shorter video clips (less than 1 minute) that are smaller (less than 320 × 240), and have a lower frame rate (12 frames per second (fps).

Compatibility
Flash Player 6 and later (On2 VP6 codec requires Flash Player 8 or later).

In the next article I would elaborate on the other two methods of video delivery. If you want to know more about flash website development development at Mindfire you can contact us at sales [at] mindfiresolutions [dot] com or call 1-248-686-1424. We will be glad to help you.

04 March, 2013

Great features of Flash 11


The latest version of Flash,i.e Flash player 11, has a lot of cool features. Features which can help build fabulous applications and which make working easy and convenient as well. Hire flash developers India from Mindfire, it's team has people who have good expertise in all the latest features and have developed applications for clients using these features. 

Below I have listed down the list of features which were new in the latest release (source Adobe website). 

Concurrency (ActionScript workers)
Developers can create more responsive content by offloading tasks (high-latency operations and long-running computations) to background "workers" that run concurrently to leverage more machine resources.

Webcam support for StageVideo
Utilize GPU acceleration to render webcam video streams with better performance.

Stage 3D accelerated graphics rendering
Explore a new architecture for high-performance 2D/3D GPU hardware accelerated graphics rendering by Adobe, which provides low-level stage3D APIs for advanced rendering in apps.

Native 64-bit support
Flash Player can now take advantage of native support for 64-bit operating systems and 64-bit web browsers on Linux®, Mac OS, and Windows®.

Protected HTTP Dynamic Streaming (HDS)
Protect streaming video across devices without the complexity of a license server.

Multi-threaded video decoding
Deliver live streaming and real-time interactive video with improved playback performance and increased frame rates of high bit rate content running on Windows, Mac OS, and Linux.

Enhanced mouse controls and relative coordinates
Create immersive, panoramic games for new classes of content, including first-person games that take advantage of infinite scrolling, mouse lock, relative mouse coordinates, and right- and middle-click events.

Secure random number generator
Developers can now take advantage of cryptographically secure random number generation to build more secure algorithms and protocols.

JPEG-XR support
Support for the JPEG-XR advanced image compression standard (International Standard ISO/IEC 29199-2) provides more efficient compression than JPEG, enables both lossy and lossless compression support, and adds support for alpha channel transparency.

High-efficiency SWF compression support
Take advantage of LZMA compression to reduce SWF file sizes by up to 40%, enabling users to benefit from richer experiences with shorter download times and reduced bandwidth consumption.

New removeChildren API
DisplayObjectContainer now implements a removeChildren API allowing developers to quickly remove all of a container’s children using a single API call.

New MovieClip property
Take advantage of the new MovieClip.isPlaying property, which returns the MovieClip's current playing state.

Native text input UI (mobile)
Mobile apps can now take advantage of the native text input controls on Android, BlackBerry Tablet, and iOS operating systems, including platform-specific user interaction behaviors such as magnification and text selection.

At Mindfire Flash Application Development has been going on for more than 6 years now and we have good exposure to all earlier versions as well as the new features of the latest version. We have one of the best flash development teams in India. We have built applications for varied industries like Social media applications, Elearning industry, Games etc. 

To know more about our expertise in flash application development and to hire flash developers, please contact us at sales [at] mindfiresolutions [dot] com or call 1-248-686-1424. We will be glad to help you.