| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249 |
- ---
- layout: default
- title: Torque 3D
- root: .
- ---
- <div class="jumbotron banner">
- <div class="container">
- <div class="row">
- <div class="col-sm-4">
- <img id="torque-logo" src="{{page.root}}/img/torque.png"></img>
- </div>
- <div class="col-sm-8">
- <h1 class="title">Torque 3D</h1>
- <p>The premier open-source game engine.</p>
- </div>
- </div>
- </div>
- </div>
- <div class="break"></div>
- <div class="container">
- <div class="row">
- <div class="col-sm-4">
- <h2>Proven tech</h2>
- <p>
- Torque has been around for a while, and it's been used for everything
- from driving simulators to MMOs to interactive coral reefs. Still
- not convinced?
- </p>
- <center>
- <a class="btn btn-default" href="{{page.root}}/engine">
- See some games
- <i class="fa fa-angle-right"></i>
- </a>
- </center>
- </div>
- <div class="col-sm-4">
- <h2>Gratis et libre</h2>
- <p>
- When you get Torque, you get everything. Under the permissive MIT
- open-source license, you can do what you want with the source code.
- </p>
- <center>
- <a class="btn btn-default" href="{{page.root}}/start">
- Download it now
- <i class="fa fa-angle-right"></i>
- </a>
- </center>
- </div>
- <div class="col-sm-4">
- <h2>Always evolving</h2>
- <p>
- Torque is being constantly developed by an enthusiastic community.
- Its future is in <em>our</em> hands, not those of a company with a
- bottom line to meet.
- </p>
- <center>
- <a class="btn btn-default" href="{{page.root}}/contribute">
- Get involved
- <i class="fa fa-angle-right"></i>
- </a>
- </center>
- </div>
- </div>
- </div>
- <div class="break"></div>
- <div class="container">
- <div class="row">
- <div class="col-sm-4">
- <h2 class="status">Recent news</h2>
- <div id="recent-news">Loading news...</div>
- <a class="pull-right" href="http://forums.torque3d.org/viewforum.php?f=15">See all <i class="fa fa-angle-right"></i></a>
- </div>
- <div class="col-sm-4">
- <h2 class="status">Activity</h2>
- <p id="activity-loading">Loading activity...</p>
- </div>
- <div class="col-sm-4">
- <h2>Quick links</h2>
- <ul id="quick-links">
- <li><a href="https://github.com/GarageGames/Torque3D/issues/new">Report an issue</a></li>
- <li><a href="https://github.com/GarageGames/Torque3D/issues?labels=Final+review">Changes for final review</a></li>
- <li><a href="http://garagegames.uservoice.com/forums/178972-torque-3d-mit/filters/top">Feature requests</a></li>
- <li><a href="http://t3dci.org">Builds and CI</a></li>
- </ul>
- </div>
- </div>
- </div>
- <script type="text/javascript" src="{{page.root}}/js/jquery.cycle.all.js"></script>
- <script type="text/javascript" src="{{page.root}}/js/jquery.timeago.js"></script>
- <script type="text/javascript">
- $(document).ready(function() {
- var images = {
- 1: 'Deadly Matter by Studio Dim Sum',
- 2: 'Airship Dragoon by YorkshireRifles',
- 3: 'Deadly Matter by Studio Dim Sum',
- 4: 'Life is Feudal',
- 5: 'Frozen Endzone by Mode 7',
- 6: 'The Reef by QUT',
- 7: 'Grim Prospects',
- 8: 'Grim Prospects',
- 9: 'BeamNG.drive by BeamNG',
- 12: 'Villagers and Heroes by Mad Otter Games',
- 13: 'Villagers and Heroes by Mad Otter Games',
- 14: 'Villagers and Heroes by Mad Otter Games',
- 15: 'Tower Wars by SuperVillain Studios',
- 16: 'Tower Wars by SuperVillain Studios',
- 17: 'Tower Wars by SuperVillain Studios',
- 18: 'Life is Feudal',
- 19: 'Chinatown (demo) by GarageGames',
- 20: 'Deathball Desert (demo) by GarageGames',
- 21: 'Deathball Desert (demo) by GarageGames',
- 22: 'Mars (demo) by GarageGames',
- 23: 'Airship Dragoon by YorkshireRifles',
- 24: 'Airship Dragoon by YorkshireRifles',
- 25: 'Frozen Endzone by Mode 7',
- 26: 'Frozen Endzone by Mode 7',
- 29: 'Dark Horizons: Mechanized Corps by Max Gaming Technologies',
- 30: 'Dark Horizons: Mechanized Corps by Max Gaming Technologies',
- 31: 'Dark Horizons: Mechanized Corps by Max Gaming Technologies',
- 32: 'Age of Decadence by Iron Tower Studio',
- 33: 'Age of Decadence by Iron Tower Studio',
- 34: 'Age of Decadence by Iron Tower Studio',
- 35: 'BeamNG.drive by BeamNG',
- 36: 'Terminal Overload by fr1tz',
- 37: 'Terminal Overload by fr1tz',
- };
- function shuffle(o) {
- for(var j, x, i = o.length; i; j = Math.floor(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x);
- return o;
- }
- // TODO: ensure no duplicate images occur.
- function createBreaks() {
- var breaks = $('div.break');
- var delay = 0;
- breaks.each(function(i) {
- // Shuffle the list of pictures that will appear in each break.
- var ids = shuffle(Object.keys(images));
- for(var i = 0; i < ids.length; i++) {
- $(this).append($('<img>')
- .attr('width', '760px')
- .attr('height', '144px')
- .attr('src', '{{page.root}}/img/banner'+ids[i]+'.jpg')
- .attr('title', images[ids[i]]));
- }
- $(this).cycle({fx: 'fade', delay: delay});
- delay += 5000 / breaks.length;
- });
- };
- createBreaks();
- getFeed('https://github.com/GarageGames/Torque3D/commits/development.atom', 2)
- .done(function (data) {
- if(data.responseData.feed && data.responseData.feed.entries) {
- var list = $('<ul/>').addClass('list-unstyled');
- $.each(data.responseData.feed.entries, function (i, e) {
- var li = $('<li/>').addClass('commit').appendTo(list);
- var hash = e.link.split('/').pop().substr(0, 6);
- var content = e.contentSnippet.split('\n').pop();
- var contentel = $('<p/>').text(content).appendTo(li);
- var hashel = $('<pre/>').addClass('inline').prependTo(contentel);
- hashel.append($('<a/>')
- .text(hash)
- .attr('href', e.link)
- .attr('target', '_blank'));
- var d = new Date(e.publishedDate);
- var stamp = $('<span/>').addClass('timeago').text('by ' + e.author + ' ').appendTo(li);
- stamp.append($('<span/>')
- .attr('title', d.toISOString())
- .timeago());
- });
- $('#activity-loading').replaceWith(list);
- }
- })
- getFeed('http://forums.torque3d.org/feed.php?mode=news', 1)
- .done(function(data) {
- if(data.responseData.feed && data.responseData.feed.entries) {
- var news = $('#recent-news');
- $.each(data.responseData.feed.entries, function (i, e) {
- news.html('');
- news.append($('<h5/>')
- .append($('<a/>')
- .attr('href', e.link)
- .html(e.title)
- )
- );
- var d = new Date(e.publishedDate);
- var stamp = $('<span/>').addClass('timeago').text('by ' + e.author + ' ').appendTo(news);
- stamp.append($('<span/>')
- .attr('title', d.toISOString())
- .timeago());
- news.append($('<p/>').html(e.contentSnippet + ' ')
- .append($('<a/>')
- .attr('href', e.link)
- .html('Read more')
- )
- );
- });
- }
- });
- $.get('http://api.github.com/repos/GarageGames/Torque3D/releases')
- .done(function(releases) {
- var latest = releases[0];
- $('<li/>').append($('<a/>')
- .attr('href', latest.html_url)
- .html('Version ' + latest.name)
- ).prependTo('#quick-links');
- })
- .fail(function() {
- $('#current-version').html('error');
- });
- // Get a feed through the Google feeds API with hourly caching.
- function getFeed(feed, numResults) {
- var now = new Date();
- var googleAPI = document.location.protocol +
- '//ajax.googleapis.com/ajax/services/feed/load?' +
- 'v=1.0' +
- '&dailycache=' + [now.getUTCDate(), now.getUTCMonth(), now.getUTCFullYear()].join('-') +
- '&num=' + numResults +
- '&callback=?&q=';
- var url = googleAPI + encodeURIComponent(feed);
- return $.ajax({
- url: url,
- dataType: 'json'
- });
- }
- });
- </script>
|