000 | 11511nam a22004933i 4500 | ||
---|---|---|---|
001 | EBC5379700 | ||
003 | MiAaPQ | ||
005 | 20240724113145.0 | ||
006 | m o d | | ||
007 | cr cnu|||||||| | ||
008 | 240724s2018 xx o ||||0 eng d | ||
020 |
_a9781788390651 _q(electronic bk.) |
||
020 | _z9781788399999 | ||
035 | _a(MiAaPQ)EBC5379700 | ||
035 | _a(Au-PeEL)EBL5379700 | ||
035 | _a(CaPaEBR)ebr11554649 | ||
035 | _a(OCoLC)1035515943 | ||
040 |
_aMiAaPQ _beng _erda _epn _cMiAaPQ _dMiAaPQ |
||
050 | 4 | _aQA76.9.U83 .S773 2018 | |
082 | 0 | _a005.437 | |
100 | 1 | _aStrakhov, Pavel Vladimirovich. | |
245 | 1 | 0 |
_aGame Programming Using Qt 5 Beginner's Guide : _bCreate Amazing Games with Qt 5, C++, and Qt Quick. |
250 | _a2nd ed. | ||
264 | 1 |
_aBirmingham : _bPackt Publishing, Limited, _c2018. |
|
264 | 4 | _c©2018. | |
300 | _a1 online resource (697 pages) | ||
336 |
_atext _btxt _2rdacontent |
||
337 |
_acomputer _bc _2rdamedia |
||
338 |
_aonline resource _bcr _2rdacarrier |
||
505 | 0 | _aCover -- Copyright and Credits -- Dedication -- Packt Upsell -- Contributors -- Table of Contents -- Preface -- Chapter 1: Introduction to Qt -- A journey through time -- The cross-platform programming -- Supported platforms -- GUI scalability -- Qt versions -- Structure of Qt framework -- Qt Essentials -- Qt Add-ons -- qmake -- Modern C++ standards -- Choosing the right license -- An open source license -- A commercial license -- Summary -- Chapter 2: Installation -- Installing the Qt SDK -- Time for action - Installing Qt using an online installer -- What just happened? -- Qt Creator -- Qt Creator's modes -- Setting up compilers, Qt versions, and kits -- Time for action - Loading an example project -- Qt documentation -- Time for action - Running the Affine Transformations project -- What just happened? -- Summary -- Chapter 3: Qt GUI Programming -- Creating GUI in Qt -- Time for action - Creating a Qt Widgets project -- What just happened? -- Design mode interface -- Time for action - Adding widgets to the form -- Layouts -- Time for action - Adding a layout to the form -- Signals and slots -- Creating signals and slots -- Connecting signals and slots -- Old connect syntax -- Signal and slot access specifiers -- Time for action - Receiving the button-click signal from the form -- What just happened? -- Automatic slot connection and its drawbacks -- Time for action - Changing the texts on the labels from the code -- Creating a widget for the tic-tac-toe board -- Choosing between designer forms and plain C++ classes -- Time for action - Creating a game board widget -- What just happened? -- Automatic deletion of objects -- Time for action - Functionality of a tic-tac-toe board -- Time for action - Reacting to the game board's signals -- What just happened? -- Advanced form editor usage -- Time for action - Designing the game configuration dialog. | |
505 | 8 | _aAccelerators and label buddies -- The tab order -- Time for action - Public interface of the dialog -- Polishing the application -- Size policies -- Protecting against invalid input -- Main menu and toolbars -- Time for action - Creating a menu and a toolbar -- What just happened? -- The Qt resource system -- Time for action - Adding icons to the project -- Have a go hero - Extending the game -- Pop quiz -- Summary -- Chapter 4: Custom 2D Graphics with Graphics View -- Graphics View architecture -- Time for action - Creating a project with a Graphics View -- What just happened? -- Coordinate systems -- The item's coordinate system -- The scene's coordinate system -- The viewport's coordinate system -- Origin point of the transformation -- What just happened? -- Have a go hero - Applying multiple transformations -- Parent-child relationship between items -- Time for action - Using child items -- Have a go hero - Implementing the custom rectangle as a class -- Conversions between coordinate systems -- Overview of functionality -- Standard items -- Anti-aliasing -- Pens and brushes -- Item selection -- Keyboard focus in graphics scene -- Painter paths -- Time for action - Adding path items to the scene -- Z-order of items -- Ignoring transformations -- Time for action - Adding text to a custom rectangle -- Finding items by position -- Showing specific areas of the scene -- Saving a scene to an image file -- What just happened? -- Have a go hero - Rendering only specific parts of a scene -- Custom items -- Time for action - Creating a sine graph project -- Time for action - Creating a graphics item class -- What just happened? -- Events -- Time for action - Implementing the ability to scale the scene -- What just happened? -- Time for action - Taking the zoom level into account -- Time for action - Reacting to an item's selection state. | |
505 | 8 | _aWhat just happened? -- Time for action - Event handling in a custom item -- Time for action - Implementing the ability to create and delete elements with mouse -- Time for action - Changing the item's size -- Have a go hero - Extending the item's functionality -- Widgets inside Graphics View -- Optimization -- A binary space partition tree -- Caching the item's paint function -- Optimizing the view -- OpenGL in the Graphics View -- Pop quiz -- Summary -- Chapter 5: Animations in Graphics View -- The jumping elephant or how to animate the scene -- The game play -- Time for action - Creating an item for Benjamin -- The playing field -- Time for action - Making Benjamin move -- What just happened? -- Parallax scrolling -- Time for action - Moving the background -- What just happened? -- Have a go hero - Adding new background layers -- The Animation framework -- Properties -- Time for action - Adding a jump animation -- Property animations -- Time for action - Using animations to move items smoothly -- What just happened? -- Have a go hero - Letting the item handle Benjamin's jump -- Time for action - Keeping multiple animations in sync -- What just happened? -- Chaining multiple animations -- Adding gamepad support -- Working with gamepads in Qt -- Time for action - Handling gamepad events -- Item collision detection -- Time for action - Making the coins explode -- What just happened? -- Finishing the game -- Have a go hero - Extending the game -- A third way of animation -- Pop quiz -- Summary -- Chapter 6: Qt Core Essentials -- Text handling -- String encodings -- QByteArray and QString -- Using other encodings -- Basic string operations -- The string search and lookup -- Dissecting strings -- Converting between numbers and strings -- Internationalization -- Using arguments in strings -- Regular expressions -- Time for action - A simple quiz game. | |
505 | 8 | _aWhat just happened? -- Extracting information out of a string -- Finding all pattern occurrences -- Containers -- Main container types -- Convenience containers -- Allowed item types -- Implicit sharing -- Pointer invalidation -- What just happened? -- Unnecessary allocation -- Range-based for and Qt foreach macro -- What just happened? -- Data storage -- Files and devices -- Traversing directories -- Reading and writing files -- Devices -- Time for action - Implementing a device to encrypt data -- What just happened? -- Have a go hero - A GUI for the Caesar cipher -- Text streams -- Binary streams -- Time for action - Serialization of a custom structure -- What just happened? -- XML streams -- Time for action - Implementing an XML parser for player data -- What just happened? -- What just happened? -- Have a go hero - An XML serializer for player data -- QVariant -- QSettings -- Settings hierarchy -- Customizing the settings location and format -- JSON files -- Time for action - The player data JSON serializer -- Time for action - Implementing a JSON parser -- What just happened? -- Pop quiz -- Summary -- Chapter 7: Networking -- QNetworkAccessManager -- Setting up a local HTTP server -- Preparing a URL for testing -- Time for action - Downloading a file -- Have a go hero - Extending the basic file downloader -- Single network manager per application -- Time for action - Displaying a proper error message -- Downloading files over FTP -- Downloading files in parallel -- The finished signal -- Time for action - Writing the OOP conform code using QSignalMapper -- What just happened? -- The error signal -- The readyRead signal -- Time for action - Showing the download progress -- What just happened? -- Using a proxy -- Connecting to Google, Facebook, Twitter, and co. -- Time for action - Using Google's Distance Matrix API. | |
505 | 8 | _aTime for action - Constructing the query -- Time for action - Parsing the server's reply -- Have a go hero - Choosing XML as the reply's format -- Controlling the connectivity state -- QNetworkConfigurationManager -- QNetworkConfiguration -- QNetworkSession -- QNetworkInterface -- Communicating between games -- Time for action - Realizing a simple chat program -- The server - QTcpServer -- Time for action - Setting up the server -- What just happened? -- Time for action - Reacting on a new pending connection -- What just happened? -- Time for action - Forwarding a new message -- Have a go hero - Using QSignalMapper -- Time for action - Detecting a disconnect -- What just happened? -- The client -- Time for action - Setting up the client -- What just happened? -- Time for action - Receiving text messages -- Time for action - Sending text messages -- Have a go hero - Extending the chat server and client -- Synchronous network operations -- Using UDP -- Time for action - Sending a text via UDP -- Have a go hero - Connecting players of the Benjamin game -- Pop quiz -- Summary -- Chapter 8: Custom Widgets -- Raster and vector graphics -- Raster painting -- Painter attributes -- Coordinate systems -- Drawing operations -- Creating a custom widget -- Time for action - Custom-painted widgets -- What just happened? -- Time for action - Transforming the viewport -- What just happened? -- Time for action - Drawing an oscillogram -- Time for action - Making oscillograms selectable -- Have a go hero - Reacting only to the left mouse button -- Touch events -- Working with images -- Loading -- Modifying -- Painting -- Painting text -- Static text -- Optimizing widget painting -- Time for action - Optimizing oscillogram drawing -- What just happened? -- Have a go hero - Caching the oscillogram in a pixmap -- Implementing a chess game. | |
505 | 8 | _aTime for action - Developing the game architecture. | |
520 | _aQt is the leading cross-platform toolkit for all significant desktop, mobile, and embedded platforms and is becoming popular by the day, especially on mobile and embedded devices. It's a powerful tool that perfectly fits the needs of game developers. This book will help you learn the basics of Qt and will equip you with the necessary toolsets. | ||
588 | _aDescription based on publisher supplied metadata and other sources. | ||
590 | _aElectronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2024. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries. | ||
650 | 0 | _aComputer games-Programming. | |
655 | 4 | _aElectronic books. | |
776 | 0 | 8 |
_iPrint version: _aStrakhov, Pavel Vladimirovich _tGame Programming Using Qt 5 Beginner's Guide _dBirmingham : Packt Publishing, Limited,c2018 _z9781788399999 |
797 | 2 | _aProQuest (Firm) | |
856 | 4 | 0 |
_uhttps://ebookcentral.proquest.com/lib/orpp/detail.action?docID=5379700 _zClick to View |
999 |
_c1618 _d1618 |