Skip to content
This repository has been archived by the owner on Sep 4, 2019. It is now read-only.

Commit

Permalink
Updated and tested on BlackBerry 10 devices using latest SDK.
Browse files Browse the repository at this point in the history
  • Loading branch information
seanpaultaylor committed Jan 9, 2013
1 parent 8cbee38 commit 5146857
Show file tree
Hide file tree
Showing 61 changed files with 1,832 additions and 1,908 deletions.
1,411 changes: 1,335 additions & 76 deletions .cproject

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions .project
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>quake3</name>
<name>Quake3</name>
<comment></comment>
<projects>
</projects>
Expand All @@ -27,7 +27,7 @@
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildLocation</key>
<value>${workspace_loc:/quake3/Device-Release}</value>
<value>${workspace_loc:/Quake3/Device-Debug}</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.contents</key>
Expand Down
8 changes: 0 additions & 8 deletions Makefile

This file was deleted.

34 changes: 6 additions & 28 deletions README.md
@@ -1,43 +1,21 @@
Build/Deploy using BlackBerry Native SDK
====================================
Below are the instructions for building the Quake3 (id tech 3) game engine for BlackBerry QNX based platforms (PlayBook).
The game engine source code included in this repository was ported from the open-source (under GPL license) directly from id software.
Below are the instructions for building the Quake3 (id tech 3) game engine for BlackBerry 10 and PlayBook devices.
The game engine source code included in this repository was ported from the open-source (under GPL license) directly from id Software.
The Quake3 maps/data files are not covered under the open-source agreement and must be provided by the developers wishing
to use the code.

Download the BlackBerry Native SDK 2.0
--------------------------------------
[Download] (https://bdsc.webapps.blackberry.com/native/beta/)
Download the BlackBerry Native SDK 10
-------------------------------------
http://developer.blackberry.com/native/download/

Add your Quake Maps
-------------------
- Copy the .pk3 map file(s) to the resource/baseq3 directory from your Quake3 CD (testing only) or custom maps you have made
- Copy the *.pk3 map file(s) to the resource/baseq3 directory. (Typically found from your purchased Quake3 CD (testing only) or demo/custom maps.

Building from Momentics IDE
---------------------------
- Run BlackBerry Momentics IDE.
- Import the project from the repo directory "Quake3".
- Right click Project -> Build Configurations -> Set Active Configuration -> Device-Release or Device-Debug.
- Build the project.
- Debug or Run the project.

Build from Makefile
-------------------
- Run cmd.exe and execute the following commands:

`> cd [bbndk]` -- where [bbndk] is where the QNX NDK was installed (i.e. C:\bbndk-2.0.0)

`> bbndk-env[.bat/.sh]`

`> cd [Quake3]/qnx` -- where [Quake3] is the directory where Quake3 was extracted to

`> make`

- Following this, the relevant binaries should reside in the following subdirectories:
- [quake3]/qnx/nto/arm/o.le.v7/quake3 (Release)
- [quake3]/qnx/nto/arm/o.le.v7.g/quake3_g (Debug)

- Run the following to build the Quake3 bar file. Add your additional parameters for signing keys and debug tokens.

`> blackberry-nativepackager -package Quake3.bar bar-descriptor.xml -e qnx/nto/arm/o.le.v7/quake3 quake3 -e resource/baseq3/pak0.pk3 baseq3/pak0.pk3 icon.png`

54 changes: 17 additions & 37 deletions bar-descriptor.xml
Expand Up @@ -6,10 +6,10 @@
Specifies parameters for identifying, installing, and launching native applications on BlackBerry Tablet OS.
-->

<!-- A universally unique application identifier. Must be unique across all BlackBerry Tablet OS applications.
Using a reverse DNS-style name as the id is recommended. (Eg. com.example.ExampleApplication.) Required. -->
<id>quake3</id>
<id>com.idsoftware.Quake3</id>

<!-- The name that is displayed in the BlackBerry Tablet OS application installer.
May have multiple values for each language. See samples or xsd schema file. Optional. -->
Expand All @@ -22,84 +22,64 @@

<!-- Fourth digit segment of the package version. First three segments are taken from the
<versionNumber> element. Must be an integer from 0 to 2^16-1 -->
<buildId>1</buildId>

<!-- A string value (such as "v1", "2.5", or "Alpha 1") that represents the version of the application, as it should be shown to users. Optional. -->
<!-- <versionLabel></versionLabel> -->

<!-- Description, displayed in the BlackBerry Tablet OS application installer.
May have multiple values for each language. See samples or xsd schema file. Optional. -->

<!-- Copyright information. Optional. -->
<!-- <copyright></copyright> -->
<buildId>1</buildId>

<!-- Name of author which is used for signing. Must match the developer name of your development certificate. -->
<author>id Software</author>
<description>Quake 3</description>

<!-- Unique author ID assigned by signing authority. Required if using debug tokens. -->
<!-- <authorId>ABC1234YjsnUk235h</authorId> -->

<initialWindow>
<aspectRatio>landscape</aspectRatio>
<autoOrients>false</autoOrients>
<systemChrome>none</systemChrome>
<transparent>false</transparent>
</initialWindow>

<!-- The category where the application appears. Either core.games or core.media. -->
<!-- The category where the application appears. Either core.games or core.media. -->
<category>core.games</category>

<asset path="icon.png">icon.png</asset>
<asset path="resource/baseq3/pak0.pk3">baseq3/pak0.pk3</asset>
<configuration id="com.qnx.qcc.configuration.exe.debug.513359716" name="Device-Debug">

<configuration name="Device-Debug">
<platformArchitecture>armle-v7</platformArchitecture>
<asset path="Device-Debug/quake3" entry="true" type="Qnx/Elf">quake3</asset>
<asset path="Device-Debug/Quake3" entry="true" type="Qnx/Elf">Quake3</asset>
</configuration>
<configuration id="com.qnx.qcc.configuration.exe.release.1191851318" name="Device-Release">
<configuration name="Device-Release">
<platformArchitecture>armle-v7</platformArchitecture>
<asset path="Device-Release/Quake3" entry="true" type="Qnx/Elf">Quake3</asset>
</configuration>
<configuration id="com.qnx.qcc.configuration.exe.profile.2047434418" name="Device-Profile">
<configuration name="Device-Profile">
<platformArchitecture>armle-v7</platformArchitecture>
<asset path="Device-Profile/Quake3" entry="true" type="Qnx/Elf">Quake3</asset>
</configuration>
<configuration id="com.qnx.qcc.configuration.exe.profile.coverage.1968527117" name="Device-Coverage">
<configuration name="Device-Coverage">
<platformArchitecture>armle-v7</platformArchitecture>
<asset path="Device-Coverage/Quake3" entry="true" type="Qnx/Elf">Quake3</asset>
</configuration>
<configuration id="com.qnx.qcc.configuration.exe.debug.1673080274" name="Simulator-Debug">
<configuration name="Simulator-Debug">
<platformArchitecture>x86</platformArchitecture>
<asset path="Simulator-Debug/Quake3" entry="true" type="Qnx/Elf">Quake3</asset>
</configuration>
<configuration id="com.qnx.qcc.configuration.exe.profile.1942537661" name="Simulator-Profile">
<configuration name="Simulator-Profile">
<platformArchitecture>x86</platformArchitecture>
<asset path="Simulator-Profile/Quake3" entry="true" type="Qnx/Elf">Quake3</asset>
</configuration>
<configuration id="com.qnx.qcc.configuration.exe.profile.coverage.725836059" name="Simulator-Coverage">
<configuration name="Simulator-Coverage">
<platformArchitecture>x86</platformArchitecture>
<asset path="Simulator-Coverage/Quake3" entry="true" type="Qnx/Elf">Quake3</asset>
</configuration>

<!-- The icon for the application, which should be 86x86. -->
<!-- The icon for the application, which should be 114x114. -->
<icon>
<image>icon.png</image>
</icon>

<!-- The splash screen that will appear when your application is launching. Should be 1024x600. -->
<!-- <splashscreen></splashscreen> -->

<!-- Request permission to execute native code. Required for native applications. -->
<action system="true">run_native</action>
<action>access_internet</action>

<!-- The permissions requested by your application. -->
<!-- <action>access_shared</action> -->
<!-- <action>record_audio</action> -->
<!-- <action>read_geolocation</action> -->
<!-- <action>use_camera</action> -->
<!-- <action>access_internet</action> -->
<!-- <action>play_audio</action> -->
<!-- <action>post_notification</action> -->
<!-- <action>set_audio_volume</action> -->
<!-- <action>read_device_identifying_information</action> -->

<!-- Ensure that shared libraries in the package are found at run-time. -->
<env var="LD_LIBRARY_PATH" value="app/native/lib"/>
Expand Down

0 comments on commit 5146857

Please sign in to comment.