2 - Player Input Handling Csc 165 Computer Game Architecture Overview

Total Page:16

File Type:pdf, Size:1020Kb

2 - Player Input Handling Csc 165 Computer Game Architecture Overview CSc 165 Lecture Notes 2 - Player Input Handling CSc 165 Computer Game Architecture Overview • Device Types • Device Abstractions 2 - Input Handling • Controllers • Input Handling Packages • Event Queues • Input Action Commands (making the inputs do things) 2 CSc 165 Lecture Notes CSc 165 Lecture Notes 2 - Player Input Handling 2 - Player Input Handling Types of Input Devices Input Handling Goals • Keyboard • Steering Wheel Keep games device-independent o Game shouldn’t contain hard-coded device details • Mouse • Dance Pad o Game shouldn’t fail when a particular device is absent • Joystick (“POV”) • Guitar (allow substitution) • “POV Hat Switch” • WiiMote Keep engine device-independent o Engine components should not contain hard-coded • Gamepad • Kinect device details • Paddle • others? … isolate details in an Input Manager 3 4 CSc 165 Lecture Notes CSc 165 Lecture Notes 2 - Player Input Handling 2 - Player Input Handling Device Abstractions “D-pad” (Directional-pad) Axes Two fundamental device types: Discrete axis devices D-pad o Can have either one or two axes . Button – returns pressed or not pressed Frequently represented as 1.0 or 0.0 Single-axis form: one component; U returns one value: L R . Axis – returns a float .25 D Two types of Axis: .125 .375 Dual axis form: two components; each returns a value: . Continuous: returns a value in a range 1.0 0 .5 e.g. { -1 … 1 } or { 0 … 1 } L N R X: . Discrete: returns a value from a set .875 .625 -1 0 +1 e.g. [ 0, 1 ] or [ -1, 0, 1 ] .75 D N U Can be absolute or relative N UL U UR R DR D DL L Y: -1 0 +1 0 .125 .25 .375 .5 .625 .75 .875 1.0 5 6 CSc 165 Lecture Notes CSc 165 Lecture Notes 2 - Player Input Handling 2 - Player Input Handling Controllers Controller Example: GamePad Most “devices” are really collections : o Keyboard: collection of (e.g. 127) “buttons” o Mouse: collection of (typically 1 to 3 or more) L & R Triggers “buttons”, plus two “axes” (‘X’ and ‘Y’) PDP Afterglow o Gamepad: collection of buttons and axes XBox-360 GamePad Right Controller Left Joystick Multiple physical buttons Joystick Joystick: two (continuous) “axes” (per joystick) 16 “devices”: 10 Buttons, D-pad: one or two (discrete) “axes” 2 Joysticks (4 continuous axes, each {-1..1}), “POV hat switch”: one or two (discrete) “axes” 2 “Triggers” (combined as a single Axis {-1..1}), 1 D-pad (1 discrete axis: Currently pressed: D-pad A, Y, & LB [0, .125, .25, … .875, 1]) (currently Left & Up, = Device collection == “Controller” 0.125) ControlPanel -> Devices&Printers -> RIGHT-click the controller icon -> Game Controller Settings > Properties 7 8 CSc 165 Lecture Notes CSc 165 Lecture Notes 2 - Player Input Handling 2 - Player Input Handling Controller Example: Dance Pad Controller Example: Guitar 9 1 10 7 8 Wah-wah handle 1&2 = Vert. Axis 3 4 3&4 = Horiz. Axis Guitar orientation 6 Currently pressed: 5 Forward, Right, “O” 16 “devices”: 10 Buttons, Chord Guitar 2 5 continuous axes, each {0..1}, buttons pick = .75 1 discrete axis, [ 0, .125, .25, .375, … .875, 1.0] 12 “devices”: 10 Buttons, (pick Off/Up/Down = [0, .25, .75]) 2 discrete axes, each [-1, 0, 1] 9 10 CSc 165 Lecture Notes CSc 165 Lecture Notes 2 - Player Input Handling 2 - Player Input Handling Controller Example : Steering Wheel Accessing Game Controllers DirectInput X axis (-1..1) Buttons o Windows-specific (part of Microsoft’s DirectX framework) o (deprecated) Currently turning left XInput and pressing gas o Microsoft API for Xbox 360 controllers Y axis pedal D- (-1..0) o No support for keyboards or mice pad OIS (Object-oriented Input System) o SourceForge (open source) project, mostly C++ Y axis (0..1) JInput o Part of JGI (Java Gaming Initiative) framework (JOGL, etc.) 15 “devices”: 12 Buttons (0-11), D-pad up-left, 1 discrete axis (D-pad, “pov”) [ 0, .125, .25, .375, … .875, 1.0], returning 0.125 o Under negotiation with Jogamp 2 continuous axes (X & Y) each [-1..1] o Supports Windows, Linux, OS-X, AWT, etc. 11 12 CSc 165 Lecture Notes CSc 165 Lecture Notes 2 - Player Input Handling 2 - Player Input Handling Primary JInput Objects JInput Organization <<interface>> <<interface>> Component • ControllerEnvironment Controller Contains the collection of defined “controllers” Controller- . Examples: Keyboard, Mouse, Joystick, GamePad… Environment * Abstract- * Abstract- Component • Controller Controller Contains a collection of “components” (input generators) Key Examples: button, key, slider, dial, controller Button Can also contain “rumblers” (output feedback devices) <<abstract>> <<abstract>> <<abstract>> <<abstract>> Keyboard Mouse Windows- … Linux- • Component Controller Controller Axis An object with a single “range” . Button: on/off OS-specific keyboard loaded by . Key: pressed/notPressed driver implementations OS-specific game controller driver OS-specific game JInput at . Axis: a value in some range OS-specific mouse implementations controller driver startup driver implementations implementations 13 14 CSc 165 Lecture Notes CSc 165 Lecture Notes 2 - Player Input Handling 2 - Player Input Handling Controller Attributes Component Attributes • Name (human-readable) • Name (human-readable) • “Identifier” (type) • Type o Axis, Button, or Key o Keyboard, Mouse, Fingerstick, GamePad, HeadTracker, Rudder, Stick, Trackball, • Return value type Trackpad, Wheel, Unknown o Relative: value is relative to previous return value o Absolute: value is independent of previous return value • Array of (sub)-controllers • Return value range capability • Array of components o Analog: allows more than two values • Array of rumblers o Digital: only two values allowed (e.g. a button) • Dead zone value • Event Queue o Threshold before switching from 0 to non-zero (useful for joysticks: minor movement ignored) See code example for accessing controller attributes with JInput See code example for accessing component attributes with JInput 15 16 CSc 165 Lecture Notes CSc 165 Lecture Notes 2 - Player Input Handling 2 - Player Input Handling Component ID Input Events Every component has a type identifier Each controller has an event queue predefined identifiers in Jinput javadoc for Component.Identifier.* Event component Component value time Identifier Key Button Axis Button Button Key press Motion in press Axis X or Y change press or or or release release release … LEFT_ X Y Z POV X_ACCELERATION _0 _1 _31 MODE … A … Z CTRL … … THUMB RX_FORCE … BACK RX RY RZ A B X Y 17 18 CSc 165 Lecture Notes CSc 165 Lecture Notes 2 - Player Input Handling 2 - Player Input Handling Simplifying Input Handling RAGE InputManager* Game goals: . For each device component event, invoke some Implements: (game-specified) action associated with that event associateAction(controller, . Hide details inside Game Engine component, Action,…) Examples: o Registers a user-specified action corresponding . Gamepad Button 2 pressed Fire Rocket to the given controller & component . Keyboard ‘f’ key pressed Fire Rocket update(float time) . Joystick “X” axis moved Change Camera View . Guitar “Pick” axis “down” o Polls the underlying device event queues button = getCurrentChordButton(); o Performs event dispatch (action invocation) if (button == displayedNote) {score++} 19 *adapted from SAGE 20 CSc 165 Lecture Notes CSc 165 Lecture Notes 2 - Player Input Handling 2 - Player Input Handling RAGE InputManager (continued) Defining an Action interface (1) register component-event/action <<interface>> Application Action (game) (2) update( ) InputManager + performAction(float time, Event e) (4) invoke actions <<abstract>> (3) getEvents() Abstract- JInput InputAction JInput Event Queue - speed + getSpeed() + setSpeed(float) + performAction(float,Event) MyAction + performAction(float,Event) 21 22 CSc 165 Lecture Notes CSc 165 Lecture Notes 2 - Player Input Handling 2 - Player Input Handling Button/Key Action Types Modifier Actions Actions can contain modifier actions. Not all actions should be invoked on every component state-change Example: MoveFoward is a standard Action Object . On Press Only: RunAction is also an Action Object, but its purpose is to modify Fire_Missile_Action, Reset_Camera_Action how fast MoveForward operates . On Press And Release: Usage example: Toggle_Running_Action . Construct both actions, associate them both with user inputs. Pass the RunAction object to MoveForward during construction . Repeatedly while held down: . Invoking RunAction modifies state information Move_Forward_Action . When invoking MoveForward, its behavior depends on the state information in RunAction (see code example) 23 24 .
Recommended publications
  • Albere Albe 1
    a b 1 ALBERE ALBERE ALBERE ALBERE ELECTRONICS GmbH ALBERE ELECTRONICS GmbH ALBERE ELECTRONICS GmbH PRODUCT-LIST 2020 All Products Excluding Shipping Fees TM Price per Unit (or otherwise explained) 2 In Euro albere TM albere TM albereGamepads ALBERE ELECTRONICS GmbH ALBERE ELECTRONICS GmbH ALBERE ELECTRONICS GmbH a b 1 ALBERE ALBERE ALBERE ALBERE ELECTRONICS GmbH ALBERE ELECTRONICS GmbH ALBERE ELECTRONICS GmbH ID CATEGORY TITLE TM 2 albere TM albere TM albere ALBERE ELECTRONICS GmbH GAMEPADS Lanjue USB GamePad 13001-S (PC) ALBERE ELECTRONICS GmbH ALBERE ELECTRONICS GmbH GAMEPADS Tracer Gamepad Warrior PC GAMEPADS VR Bluetooth Gamepad White GAMEPADS Esperanza Vibration Gamepad USB Warrior PC/PS3 GAMEPADS Gembird JPD-UDV-01 GAMEPADS Competition PRO Powershock Controller (PS3/PC) GAMEPADS PDP Rock Candy Red GAMEPADS PC Joystick USB U-706 GAMEPADS Konix Drakkar Blood Axe GAMEPADS Gembird USB Gamepad JPD-UB-01 GAMEPADS Element GM-300 Gamepad GAMEPADS Intex DM-0216 GAMEPADS Esperanza Corsair Red GAMEPADS Havit HV-G69 GAMEPADS Nunchuck Controller Wii/Wii U White GAMEPADS Esperanza Fighter Black GAMEPADS Esperanza Fighter Red GAMEPADS VR Bluetooth Gamepad 383346582 GAMEPADS 744 GAMEPADS CO-100 GAMEPADS Shinecon SC-B01 GAMEPADS Gamepad T066 GAMEPADS Media-Tech MT1506 AdVenturer II GAMEPADS Scene It? Buzzers XBOX 360 Red GAMEPADS Media-Tech MT1507 Corsair II Black GAMEPADS Esperanza EGG107R Black/Red GAMEPADS Esperanza Wireless Gladiator Black GAMEPADS 239 GAMEPADS PowerWay USB GAMEPADS Nunchuck Controller Wii/Wii U Red GAMEPADS Powertech BO-23
    [Show full text]
  • Play Any PC Game with a Gamepad Using Joytokey for Those Who Prefer Controllers to Keyboards
    Play Any PC Game with a Gamepad Using JoyToKey For those who prefer controllers to keyboards There was a time when “hardcore” PC gamers would look down on the idea of using a gamepad to play PC games. The mouse and keyboard reigned supreme, especially in the golden age of first person shooters. The truth is that joysticks and gamepads have a rich and storied history on the PC, with genres such as racing and flight simulation virtually requiring it to be playable. The problem is that, for a very long time, gamepads on PC were not really standardized. Without a solid idea of what players would be using, many developers simply didn’t bother developing gamepad support for their titles. Now, largely thanks to console ports, the Xbox controller has become the de facto standard for PC gaming too. Better yet, since so many games are also developed for the Xbox, it’s easy for developers to simply include the control scheme. The end result is that if you hook up an Xbox controller to a modern Windows PC, modern games will seamlessly switch over, even changing the in-game UI to reflect gamepad controls. This is the best of time for those of us who love to game with a gamepad on PC, especially from a couch. However, there are thousands of older PC games that only support a keyboard and mouse. Which leaves us with a bit of an issue. Luckily JoyToKey provides an affordable solution. How To Use JoyToKey JoyToKey is a small application sold for a few dollars that takes gamepad input and converts it to mouse and keyboard output.
    [Show full text]
  • The Ergonomic Development of Video Game Controllers Raghav Bhardwaj* Department of Design and Technology, United World College of South East Asia, Singapore
    of Ergo al no rn m u ic o s J Bhardwaj, J Ergonomics 2017, 7:4 Journal of Ergonomics DOI: 10.4172/2165-7556.1000209 ISSN: 2165-7556 Research Article Article Open Access The Ergonomic Development of Video Game Controllers Raghav Bhardwaj* Department of Design and Technology, United World College of South East Asia, Singapore Abstract Video game controllers are often the primary input devices when playing video games on a myriad of consoles and systems. Many games are sometimes entirely shaped around a controller which makes the controllers paramount to a user’s gameplay experience. Due to the growth of the gaming industry and, by consequence, an increase in the variety of consumers, there has been an increased emphasis on the development of the ergonomics of modern video game controllers. These controllers now have to cater to a wider range of user anthropometrics and therefore manufacturers have to design their controllers in a manner that meets the anthropometric requirements for most of their potential users. This study aimed to analyse the evolution of video game controller ergonomics due to increased focus on user anthropometric data and to validate the hypothesis that these ergonomics have improved with successive generations of video game hardware. It has analysed and compared the key ergonomic features of the SEGA Genesis, Xbox, Xbox 360, and PS4 controllers to observe trends in their development, covering a range of 25 years of controller development. This study compared the dimensions of the key ergonomic features of the four controllers to ideal anthropometric values that have been standardised for use in other handheld devices such as TV remotes or machinery controls.
    [Show full text]
  • Download the User Manual and Keymander PC Software from Package Contents 1
    TM Quick Start Guide KeyMander - Keyboard & Mouse Adapter for Game Consoles GE1337P PART NO. Q1257-d This Quick Start Guide is intended to cover basic setup and key functions to get you up and running quickly. For a complete explanation of features and full access to all KeyMander functions, please download the User Manual and KeyMander PC Software from www.IOGEAR.com/product/GE1337P Package Contents 1 1 x GE1337P KeyMander Controller Emulator 2 x USB A to USB Mini B Cables 1 x 3.5mm Data Cable (reserved for future use) 1 x Quick Start Guide 1 x Warranty Card System Requirements Hardware Game Consoles: • PlayStation® 4 • PlayStation® 3 • Xbox® One S • Xbox® One • Xbox® 360 Console Controller: • PlayStation® 4 Controller • PlayStation® 3 Dual Shock 3 Controller (REQUIRED)* • Xbox® 360 Wired Controller (REQUIRED)* • Xbox® One Controller with Micro USB cable (REQUIRED)* • USB keyboard & USB mouse** Computer with available USB 2.0 port OS • Windows Vista®, Windows® 7 and Windows® 8, Windows® 8.1 *Some aftermarket wired controllers do not function correctly with KeyMander. It is strongly recommended to use official PlayStation/Xbox wired controllers. **Compatible with select wireless keyboard/mouse devices. Overview 2 1. Gamepad port 1 2 3 2. Keyboard port 3. Mouse port 4. Turbo/Keyboard Mode LED Gamepad Keyboard Mouse Indicator: a. Lights solid ORANGE when Turbo Mode is ON b. Flashes ORANGE when Keyboard Mode is ON 5. Setting LED indicator: a. Lights solid BLUE when PC port is connected to a computer. b. Flashes (Fast) BLUE when uploading a profile from a computer to the KeyMander.
    [Show full text]
  • Development of a Windows Device Driver for the Nintendo Wii Remote Entwicklung Eines Windows Treibers Für Die Nintendo Wii Remote
    Development of a Windows Device Driver for the Nintendo Wii Remote Entwicklung eines Windows Treibers für die Nintendo Wii Remote Julian Löhr School of Informatics SRH Hochschule Heidelberg Heidelberg, Germany [email protected] Abstract—This paper is about the development of a device The Wii Remote uses Bluetooth for its wireless driver for the Nintendo Wii Remote on Windows PC’s. communication and is thereby connectable with a pc[1]. Windows does recognize the Wii Remote as a game controller, Keywords—Windows driver development, Wii Remote, human but as shown in Fig. 1 no inputs are exposed. Therefore it is not interface device, game controller, Bluetooth usable without any third party support. There are various programs to enable the Wii Remote to be used within video I. INTRODUCTION games, but all of them just map the inputs to keyboard keys[2]. Many PC games do support game controllers. The So this is useful for some single-player games, but does not Nintendo Wii Remote is a wireless controller for the Nintendo support analog input[2]. Additionally if multiple controllers are Wii console and the Nintendo Wii U console. It features needed, e.g. for local multiplayer games like FIFA, this several buttons, acceleration sensors and an infrared sensor. solution is not sufficient enough[2]. Furthermore it is possible to expand the controller via an additional port with various attachments. Those attachments So the objective is to develop a device driver to enable it as are, i.e. the Nunchuk, a controller with additional buttons and a native game controller.
    [Show full text]
  • About Your SHIELD Controller SHIELD Controller Overview
    About Your SHIELD controller Your NVIDIA® SHIELD™ controller works with your SHIELD tablet and SHIELD portable for exceptional responsiveness and immersion in today’s hottest games. It is the first-ever precision controller designed for both Android™ and PC gaming. Your controller includes the following features: Console-grade controls Ultra-responsive Wi-Fi performance Stereo headset jack with chat support Microphone for voice search Touch pad for easy navigation Rechargeable battery and USB charging cable Your controller is compatible with the SHIELD portable and the SHIELD tablet. It can also be used as a wired controller for a Windows 7 or Windows 8 PC running GeForce Experience. Learn more about wired PC support here. Your controller cannot be used with other Android devices at this time. SHIELD controller Overview The SHIELD controller box includes one SHIELD controller, one USB charging cable, one Support Guide, and one Quick Start Guide. Shield controller D-pad NVIDIA button Android navigation and Start buttons A B X Y buttons Left thumbstick Right thumbstick Touchpad Volume control Turn on or Turn Off your controller How to Turn On the Controller Tap the NVIDIA button. How to Turn Off the Controller Hold the NVIDIA button for 6 seconds. The controller automatically turns off when you turn off the SHIELD device the controller is connected to. The controller also automatically turns off after 10 minutes of idle time. NOTE The controller stays on during video and music playback on the SHIELD device. This allows the controller to be active to control media playback. How to Connect Your Controller to a SHIELD Device Your controller is compatible with the SHIELD portable and the SHIELD tablet.
    [Show full text]
  • Beginning .NET Game Programming in En
    Beginning .NET Game Programming in en DAVID WELLER, ALEXANDRE SANTOS LOBAo, AND ELLEN HATTON APress Media, LLC Beginning .NET Game Programming in C# Copyright @2004 by David Weller, Alexandre Santos Lobao, and Ellen Hatton Originally published by APress in 2004 All rights reserved. No part of this work may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording, or by any information storage or retrieval system, without the prior written permission of the copyright owner and the publisher. ISBN 978-1-59059-319-6 ISBN 978-1-4302-0721-4 (eBook) DOI 10.1007/978-1-4302-0721-4 Trademarked names may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, we use the names only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark. Technical Reviewers: Andrew Jenks, Kent Sharkey, Tom Miller Editorial Board: Steve Anglin, Dan Appleman, Gary Cornell, James Cox, Tony Davis, John Franklin, Chris Mills, Steve Rycroft, Dominic Shakeshaft, Julian Skinner, Jim Sumser, Karen Watterson, Gavin Wray, John Zukowski Assistant Publisher: Grace Wong Project Manager: Sofia Marchant Copy Editor: Ami Knox Production Manager: Kari Brooks Production Editor: JanetVail Proofreader: Patrick Vincent Compositor: ContentWorks Indexer: Rebecca Plunkett Artist: Kinetic Publishing Services, LLC Cover Designer: Kurt Krames Manufacturing Manager: Tom Debolski The information in this book is distributed on an "as is" basis, without warranty. Although every precaution has been taken in the preparation of this work, neither the author(s) nor Apress shall have any liability to any person or entity with respect to any loss or damage caused or alleged to be caused directly or indirectly by the information contained in this work.
    [Show full text]
  • Virtual Reality Controllers
    Evaluation of Low Cost Controllers for Mobile Based Virtual Reality Headsets By Summer Lindsey Bachelor of Arts Psychology Florida Institute of Technology May 2015 A thesis Submitted to the College of Aeronautics at Florida Institute of Technology in partial fulfillment of the requirements for the degree of Master of Science In Aviation Human Factors Melbourne, Florida April 2017 © Copyright 2017 Summer Lindsey All Rights Reserved The author grants permission to make single copies. _________________________________ The undersigned committee, having examined the attached thesis " Evaluation of Low Cost Controllers for Mobile Based Virtual Reality Headsets," by Summer Lindsey hereby indicates its unanimous approval. _________________________________ Deborah Carstens, Ph.D. Professor and Graduate Program Chair College of Aeronautics Major Advisor _________________________________ Meredith Carroll, Ph.D. Associate Professor College of Aeronautics Committee Member _________________________________ Neil Ganey, Ph.D. Human Factors Engineer Northrop Grumman Committee Member _________________________________ Christian Sonnenberg, Ph.D. Assistant Professor and Assistant Dean College of Business Committee Member _________________________________ Korhan Oyman, Ph.D. Dean and Professor College of Aeronautics Abstract Title: Evaluation of Low Cost Controllers for Mobile Based Virtual Reality Headsets Author: Summer Lindsey Major Advisor: Dr. Deborah Carstens Virtual Reality (VR) is no longer just for training purposes. The consumer VR market has become a large part of the VR world and is growing at a rapid pace. In spite of this growth, there is no standard controller for VR. This study evaluated three different controllers: a gamepad, the Leap Motion, and a touchpad as means of interacting with a virtual environment (VE). There were 23 participants that performed a matching task while wearing a Samsung Gear VR mobile based VR headset.
    [Show full text]
  • Microsoft Palladium
    Microsoft Palladium: A Business Overview Combining Microsoft Windows Features, Personal Computing Hardware, and Software Applications for Greater Security, Personal Privacy, and System Integrity by Amy Carroll, Mario Juarez, Julia Polk, Tony Leininger Microsoft Content Security Business Unit June 2002 Legal Notice This is a preliminary document and may be changed substantially prior to final commercial release of the software described herein. The information contained in this document represents the current view of Microsoft Corporation on the issues discussed as of the date of publication. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information presented after the date of publication. This White Paper is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, AS TO THE INFORMATION IN THIS DOCUMENT. Complying with all applicable copyright laws is the responsibility of the user. Without limiting the rights under copyright, no part of this document may be reproduced, stored in or introduced into a retrieval system, or transmitted in any form or by any means (electronic, mechanical, photocopying, recording, or otherwise), or for any purpose, without the express written permission of Microsoft Corporation. Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this document. Except as expressly provided in any written license agreement from Microsoft, the furnishing of this document does not give you any license to these patents, trademarks, copyrights, or other intellectual property. Unless otherwise noted, the example companies, organizations, products, domain names, e-mail addresses, logos, people, places and events depicted herein are fictitious, and no association with any real company, organization, product, domain name, e-mail address, logo, person, place or event is intended or should be inferred.
    [Show full text]
  • Metadefender Core V4.19.0
    MetaDefender Core v4.19.0 © 2019 OPSWAT, Inc. All rights reserved. OPSWAT®, MetadefenderTM and the OPSWAT logo are trademarks of OPSWAT, Inc. All other trademarks, trade names, service marks, service names, and images mentioned and/or used herein belong to their respective owners. Table of Contents About This Guide 14 Key Features of MetaDefender Core 15 1. Quick Start with MetaDefender Core 16 1.1. Installation 16 Basic setup 16 1.1.1. Configuration wizard 16 1.2. License Activation 22 1.3. Process Files with MetaDefender Core 22 2. Installing or Upgrading MetaDefender Core 23 2.1. Recommended System Configuration 23 Microsoft Windows Deployments 24 Unix Based Deployments 26 Data Retention 28 Custom Engines 28 Browser Requirements for the Metadefender Core Management Console 28 2.2. Installing MetaDefender 29 Installation 29 Installation notes 29 2.2.1. MetaDefender Core 4.18.0 or older 30 2.2.2. MetaDefender Core 4.19.0 or newer 33 2.3. Upgrading MetaDefender Core 38 Upgrading from MetaDefender Core 3.x to 4.x 38 Upgrading from MetaDefender Core older version to 4.18.0 (SQLite) 38 Upgrading from MetaDefender Core 4.18.0 or older (SQLite) to 4.19.0 or newer (PostgreSQL): 39 Upgrading from MetaDefender Core 4.19.0 to newer (PostgreSQL): 40 2.4. MetaDefender Core Licensing 41 2.4.1. Activating Metadefender Licenses 41 2.4.2. Checking Your Metadefender Core License 46 2.5. Performance and Load Estimation 47 What to know before reading the results: Some factors that affect performance 47 How test results are calculated 48 Test Reports 48 2.5.1.
    [Show full text]
  • The Trackball Controller: Improving the Analog Stick
    The Trackball Controller: Improving the Analog Stick Daniel Natapov I. Scott MacKenzie Department of Computer Science and Engineering York University, Toronto, Canada {dnatapov, mack}@cse.yorku.ca ABSTRACT number of inputs was sufficient. Despite many future additions Two groups of participants (novice and advanced) completed a and improvements, the D-Pad persists on all standard controllers study comparing a prototype game controller to a standard game for all consoles introduced after the NES. controller for point-select tasks. The prototype game controller Shortcomings of the D-Pad became apparent with the introduction replaces the right analog stick of a standard game controller (used of 3D games. The Sony PlayStation and the Sega Saturn, for pointing and camera control) with a trackball. We used Fitts’ introduced in 1995, supported 3D environments and third-person law as per ISO 9241-9 to evaluate the pointing performance of perspectives. The controllers for those consoles, which used D- both controllers. In the novice group, the trackball controller’s Pads, were not well suited for 3D, since navigation was difficult. throughput was 2.69 bps – 60.1% higher than the 1.68 bps The main issue was that game characters could only move in eight observed for the standard controller. In the advanced group the directions using the D-Pad. To overcome this, some games, such trackball controller’s throughput was 3.19 bps – 58.7% higher than the 2.01 bps observed for the standard controller. Although as Resident Evil, used the forward and back directions of the D- the trackball controller performed better in terms of throughput, Pad to move the character, and the left and right directions for pointer path was more direct with the standard controller.
    [Show full text]
  • Creating Force Feedback Using C++ Programming Language and Actuators
    Creating Force Feedback using C++ programming language and Actuators Behdad Rashidian Design Team 5-Smart Voting Joystick for Accessible Voting Machines April 4, 2013 Facilitator: Dr. John Deller Page 1 Abstract The purpose of this application note is to aid the user create the desired force feedback to different axis of a joystick. This document contains material about programming the force feedback and how the actuators will work based on the code that is provided and the H-Bridge based circuit designed for the motors. Actuator motors will be discussed in detail to give a better perspective of the design of the force feedback. This note also includes relevant schematics and figures to provide the user with visual references to the mentioned components to minimize misinterpretation. Keywords Actuators, C# programming, Motors, Force Feedback, Axis, Joystick, DirectX, DirectInput, H-Bridge circuit Introduction Many varieties of input devices and control interfaces have been developed for powered joystick to satisfy diverse needs for disabled people. However, for some people with severe motor disabilities, it is impossible to use these powered joysticks since they do not provide the desired force feedback. The force feedback is needed in order to control the range of joystick movements. Moving through different selections in a webpage needs Constant type of force feedback so it can help the user with motor disabilities to move easier among selections. In this application note we will discuss developing a program which allows the user to have this constant force with the DirectX library that will be discussed. H-Bridge circuit introduction H bridge circuit enables a voltage to be applied across a load in either direction.
    [Show full text]