BlitzTiles
Community Forums/Showcase/BlitzTiles
| ||
![]() I present you my project "BlitzTiles", the successor to the now discontinued project TerraTiles. It is based on it (huge outdoor 3D terrain, character steering, day/night shift) but I redesigned everything from the scratch and it is using a quadtree now instead of a unoptimized mesh (sorry for the double post, but this is complete different from TerraTiles). EDIT: I updated the package, it is now possible to download a complete installation and separate maps here: Main Program: BlitzTiles 1.02 (4.4MB) MAP: Desert Mesa 1025x1025 (3.7MB) MAP: Grand Canyon 1025x1025 (5.5MB) MAP: Monkey Island 2049x2049 (5.2MB) MAP: Middle Earth 2049x2049 (7.3MB) MAP: Zillertal 1025x1025 (5.1MB) Tutorial how to create real Terrains for BlitzTiles BlitzTiles features: - Third Cam perspective and freeflight mode - reads Terragen heightmaps with 16bit precision - realistic sizes by the Terragen file scale - creates a tiled, quadtree-optimized mesh with seamless chunks (using QTS) - cuts a larger texture to smaller textures fitting these tiles - calculates the vertex normals out of the Terragen heightmap - simulates a seamless night and day shift - animated water / ocean - moving and changing clouds - starry night with star twinkle - increasing sun brightness - moon phases - Island mode - Loading bar - many settings changeable through INI text files - and it is FREE The package contains three well optimized demo maps to show these features, additional there is a help file in CHM format included (Windows help) with a complete documentation of all INI settings explained, media files and the source. And I describe the creation of a new scene using L3DT in a tutorial. For the sake of completeness I added the original source of TerraTiles with some functions not used in BlitzTiles but they can be still interesting for your own projects. Here are the screenshots of the three maps: ![]() ![]() ![]() You can use BlitzTiles for different projects, for Roleplaying, Egoshooter or just outdoor 3D games. Certainly there is place for improvment but I reached the limit of my skills now (but it is running nice at this point, approx. 300-400FPS, sometimes 700-800). If you think you can improve it then DO IT because I publish this project under a modified BSD license and the code is free! One possible improvement could be to add fractal subdivision close to the player to increase the detail level or even add texture splatting close to it and use BlitzTiles just for average / far distances. Or leave it like it is and use it as a base for you own projects. I've been working a whole month on this project and I still think that it is not finished. But I wanted to share it with the community NOW. I'm working on large outdoor areas in Blitz3D since two and a half year (since i started with Blitz3D) and this is my replacement solution for BlitzTerrains. I hope it is successful and you like it. And now finally the download of version 1.01 [7zip SFX Archive, 17.7MB]: blitztiles101.exe Please notice that you'll need additional two components to run BlitzTiles, this is due a license change between Version 1.00 and 1.01: 1) eole's QTS Quadtree Terrain System, modified by me (put this qts.bb into the "inc" folder of BlitzTiles), original by eole: qts.bb 2. The 3D dwarf Model made by "psionic", extract the contents of the dwarf.zip into the "models" folder of BlitzTiles: Download psionic's 3D dwarf model EDIT: forgot to mention there is a fourth scene available: ![]() Download it here (5.5MB 7zip SFX): http://www.christianhart.de/bb/blitztiles/map_grandcanyon.exe And there is a tutorial How to create real Terrains for BlitzTiles Last edited 2011 Last edited 2011 |
| ||
Hi Christian Congrats by the way, this looks very very nice, and thanks for giving it to the community. I will check it out later on tonight. The screenshot do look beautiful |
| ||
thanks, this is great |
| ||
This is most impressive. Terragen integration alone makes it very interesting, but the project as a whole at a quick glance looks great. The framerate keeps constant, the day night cycle with haze, cloud layers and halos is top notch, and it also makes good use of multitexturing. The code is very elegant and the package very comprehensive too. It's the best example seen so far for B3D for sure, and in my opinion it can't get so much better. |
| ||
Looks really nice, probably one of the best looking landscape's I've seen in blitz. The level of detail in your images looks great, although it looks like I see antialiasing, so did you use fullscreen AA or are the images reduced from their originals? |
| ||
This is all very exciting. I award you a very rare "puki" Star of Merit. |
| ||
Absolutely stunning, the sense of scale provided by the landscape is amazing, the best I've ever seen. Bravo and thanks for sharing. I'm away to walk a few more kilometers around the mountains. |
| ||
After "playing" with the demo, one word: INCREDIBLE Very good work Krischan. Thx ;) JP |
| ||
wow. the detail is amazing... do you mind if I use one of the terrains for a little demo? Im not selling it or anything, just demonstrating to some people the power of blitz 3d. I will certainly give you credit :) |
| ||
Looks great, certainly one of the most massive landscapes ive seen.. Try populating that with props :) |
| ||
Heh, I have only just got around to running it. Very nice. It even comes with a chm file - woof woof - sausages. |
| ||
It seems to work okay with Fast Extension. Anaglyph 3D works (near distance) and shadows also work. |
| ||
If you think you can improve it then DO IT because I publish this project under the GNU license and the code is free! So everyone who uses this has to make their entire project open source? |
| ||
this is friggin amazing. I wish this was released a few years ago.. the games I would of made... Great work man, the clouds, night/day, everything is top notch. |
| ||
Thanks to all. To the questions: Imaginary Human My nVidia driver did that with the setting "Quality".although it looks like I see antialiasing, so did you use fullscreen AA or are the images reduced from their originals? Nate the Great Do it :-)wow. the detail is amazing... do you mind if I use one of the terrains for a little demo? Im not selling it or anything, just demonstrating to some people the power of blitz 3d. I will certainly give you credit :) Gabriel As described in the GNU license FAQ, yes:So everyone who uses this has to make their entire project open source? If I use a piece of software that has been obtained under the GNU GPL, am I allowed to modify the original code into a new program, then distribute and sell that new program commercially? You are allowed to sell copies of the modified program commercially, but only under the terms of the GNU GPL. Thus, for instance, you must make the source code available to the users of the program as described in the GPL, and they must be allowed to redistribute and modify it as described in the GPL. These requirements are the condition for including the GPL-covered code you received in a program of your own. Another point is that you must respect the license agreement of "eole" for the QTS code (which I modified for BlitzTiles) or write your own quadtree algorithm, the dwarf model (if you're planning to use it) and for some modified textures from Spiral Graphics (credit them or make your own). |
| ||
So everyone who uses this has to make their entire project open source? As described in the GNU license FAQ, yes This is a very nice piece of software, and thankyou very much for releasing it how you have... but that's quite a 'catch', and it's important everyone makes an informed decision. |
| ||
but that's quite a 'catch' What's the alternative? |
| ||
What's the catch if you don't open source a project that utilises this. What happens? |
| ||
I doubt that you will go to jail like an evil copyright terrorist pirate of proprietary software but if you get caught: the free software community could be informed and know that you deprive them a masterpiece of software and - even worse - ignore their ideals and therefore you'll suffer digital stoning :-) You could lose potential customers.![]() ![]() Its up to you: be ![]() ![]() |
| ||
awesome stuff! What's the alternative? It's called public domain, MIT or BSD licenses allow your software to be commercially exploited by people wanting to make stuff called money. No developer is going to take your software seriously as GPL simply forces them to make their project free. GPL make sense for an OS like Linux, for applications that don't take 20 years to be half finished it's simply an ambiguous political statement. If you can't profit from your hard work and don't want to see anyone else profit either you have picked the correct license. |
| ||
It looks bereautiful from the screenies... very impressive indeed. I'm gonna download it and have a play around right now :D I don't think there's anything wrong with a licence agreement suggesting that any products made with BlitzTiles cannot be sold, or that redistribution must include the BlitzTiles source code, but for the entire project to be open source? That does seem to me to be a little 'strict'. Perhaps 'forcing' a logo or link to appear in any project using BlitzTiles might be better? |
| ||
If you can't profit from your hard work and don't want to see anyone else profit either you have picked the correct license. These other licenses are not in my intention, I checked many license models earlier but the GPL was the best one I found. I don't want to make money - I want to share the software with the community and the improvements of it shall be shared, too. I'm not sure if it is covered by the GPL V3 when I say: As the author I can still authorize an exception for your project if you ask me. But I'm no lawyer, I'm a programmer :-) |
| ||
hey krischan. I was just trying to mess around with it and get a little car to drive around the terrain, but everything got weird when I tried to create a camera over the top of the BT_camera. All I can see are the clouds and the car model I am using... is there something I need to know about how it works to get this to work? |
| ||
I need more details. If you press "O" and "G" do you see the ground and the ocean patch? Does the terrain appear when you press "TAB"? Can you provide a Screenshot ("BACKSPACE")? The Sunpivot, the Moonpivot and the Skypivot gets attached to the BT_Camera all the time in the function "BT_UpdatePositions". Perhaps your terrain position is messy. Did you use one of my terrains or did you try your own work? |
| ||
I was using the Zillateral terrain. Sorry I can't get a screenshot anymore but it was basically just the sky textures moving and thats all I could see. It just seems like whenever I try to move a camera or an object I add to the scene, it jerks right back to where it was before. :( oh well ill mess around with it some more. |
| ||
Ill have to read up on GPL more. But it seems like if I used this as a separate module or a function/class unto itself that I would only need to release that actual part of the program. For instance if you use a modified/recompiled DLL covered under GPL in a project I would assume you only have to make that source freely available but not the whole project that uses it. Could be wrong though gives me a reason to read up more on these license agreements. Its funny though about 3 weeks ago I went to Big Omaha, and the president of 37Signals was speaking there. He had a good point.. WTF is up with everyone thinking everything should be free? You should get something from your hard work, and if you release a product you should charge for it, if its a good enough product. For something like Blitz tiles I would of paid for it a few years ago when I was still actively using B3D for projects and you as the author still would of been helping people out more by selling it, even more so because you are allowing them to use your work with theirs and get something for it. Now under this agreement it might put people off because they can spend a bunch of time incorporating it and then get nothing back but a fuzzy feeling. But in the end its your code, and it is a nice product. Just my two cents. |
| ||
So, I am curious how the terrain works, you said you are using a quadtree, so I presume you store different levels of detail or something in each level of the tree and then show the coarser levels further from the camera and the detailed levels closer? Your entire landscape is one big huge unique mesh, right, with no repetition? |
| ||
I don't know of any licenses which force you to publish changes to the library itself but don't have any kind of viral effect on the rest of your code. If you want people to be compelled to publish changes, you probably don't have a lot of options, short of writing your own license from scratch. Ill have to read up on GPL more. But it seems like if I used this as a separate module or a function/class unto itself that I would only need to release that actual part of the program. For instance if you use a modified/recompiled DLL covered under GPL in a project I would assume you only have to make that source freely available but not the whole project that uses it. Could be wrong though gives me a reason to read up more on these license agreements. The GPL has no such exception, though you might be thinking of the Lesser GPL. The Lesser GPL has an exception for dynamically linked libraries, but since Blitz3D statically links everything, that wouldn't help. You would have to be able to compile the library to a standalone DLL and then link dynamically to that. I don't think it's possible, but I'm happy to be corrected. |
| ||
The Lesser GPL has an exception for dynamically linked libraries... You can also add an exception of your own, if you wish, which can allow you to link statically. For example, wxWidgets uses this license feature. (FLTK too, I believe). |
| ||
I'm not sure if it is covered by the GPL V3 when I say: As the author I can still authorize an exception for your project if you ask me The thing to remember is that GNU's GPL text is a recommended licence, but nobody forces you to use it in the exact form the FSF wrote it. The exact conditions of the licence you release your product under are always yours to tweak or completely rewrite to any extent. The reason people prefer GPL, MIT, BSD etc is mainly because we all already know what they say and nobody has to spend hours with their lawyer poring over the text again. If none of these fit exactly what you want, just write a new licence, or add extra Ts&Cs to an existing licence template. In any case, thanks! |
| ||
Like others have noted, this is very nice. However, the license makes it completely useless. |
| ||
OK after thinking about it I want to change the license agreeement to a less restrictive one but it doesn't seem to be that easy. BlitzTiles uses some parts of other people/organizations and I have to respect their licenses, too. Here the three major agreements in detail: 1. QTS Quadtree Terrain System This is a legal agreement ("License Agreement") between you And Poursin Nicolas. > BlitzTiles is a free tool, so it matches the permission.You are permitted To: - Create for free or commercial games - Free Tool You are Not permitted To: 1) Sell, resell it 2) Use it, in commercial tool 3) Modify the products And sell it 2. Dwarf Model by psionic This model pack is available for use in freeware, shareware, commercial games/software with the following restrictions: > BlitzTiles is a free tool and no single model pack, so it matches the permission.- You may not sell/re-sell this model pack or claim it as your own. - You may not redistribute this pack in some other model pack through a website or on a compilation CD of any kind, without my written consent. 3. Three Textures by Spiral Graphics If you are a "Free User" (someone who has not purchased an appropriate Genetica license and instead uses free or demo software): > BlitzTiles is a free tool using some modified textures from them and has a link in the help file to their website, so it matches their permission.a. You may use the preset and pack textures in both commercial and noncommercial projects such as games, movies, publications, and artwork. You will not owe us any fee for this activity. b. You may modify our textures to whatever extent you see fit. You will not owe us any fee for this activity. c. You may redistribute our textures, but must clearly and visibly link to our website as the source of the textures. If you do not wish to credit our website, then you may instead become a Paying Customer by purchasing a license for Genetica, at which point your rights will be governed by point 1 above. So which license would match these criteria? I could re-release BlitzTiles covering only my OWN work under the BSD excluding the above work and refer to their license agreements. So you can use BlitzTiles but if you want to make a commercial app/game you must ask them for their authorization, too (at least QTS or write your own Quadtree algorithm). The three textures can be replaced by own work, the dwarf model too (but should be no problem) but QTS has its own, restrictive license agreement as is needed by BlitzTiles to run, even if I rewrote and optimized it in large parts. It is too easy to say that it is useless with my current license without answering these questions or making suggestions how to get out of this dilemma. You can blame me for my GPL license, but you must blame the others, too... As a consequence, BlitzTiles Download is no more available until a new license and/or package is set up. |
| ||
*OUTSTANDING WORK!!* Congratulation to this Krischan. |
| ||
QTS isn't GPL-ed, is it? If it is that might make it more difficult to come up with a separate licence for the rest of your work. Releasing the functions that are your work under a separate licence from those that aren't is a good idea. Although a compiled result can only have one licence, that's up to the Blitzer making that result to resolve with the authors of the various components - you can just stick the pieces in separate include files and apply a different licence to each, no problem (your own EXE doesn't need to have permission for commercial use, since it's a demo, does it?). The Blitzer can then either seek commercial permission for the individual function packs, or replace them. |
| ||
OK finished. I created a new package and modified a BSD license, now you can use it in your free AND commercial applications without releasing your whole source. I only ask you to tell me what you created with BlitzTiles and to share your BlitzTiles improvements with the BlitzBasic community again if you are willing to, but these are no prerequisites - it is up to you. Additional I replaced the three 3rd party textures with my own work, removed the dwarf model out of my package and added the "qts.bb" containing the modified version of eole's QTS Quadtree Terrain System compatible with BlitzTiles to the first post of this thread. So my package consists only of my own work now and I was able to modify the license. I've put two text files in the empty folders "inc" and "models" with instructions how to get the two missing components needed to start blitztiles.bb or terratiles_pre-quadtree.bb. Please delete the first Version "blitztiles100.exe" and all its contents and use only the version 1.01 or later from now or overwrite older files with those from version 1.01. It is the same package, only with a different license and missing 3rd party media. I hope you're happy now - I lost my saturday. Time to get drunk. PS: the modified license text: Copyright (c) 2009, Christian Hart. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION). HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. A final request by the author: The author would be happy if you let him know what you created using BlitzTiles, just out of curiosity (check the contact page in this help file how to contact him) and asks you to improve the code and share the improvements with the BlitzBasic community again like he did before. There is a lot of work in this project and the author decided to give it away for free, so set a good example if you are willing to. But these two conditions are no prerequisites for using this code in your own free or commercial applications. The decision is up to you. |
| ||
I lost my saturday. Saturday just started here.. how can it already be over for you? In fact, I just woke up and checked the blitzblog lol. Thanks for this though. Its the best terrain I have ever seen in blitz. |
| ||
Wow man.. thanks Never would of thought you'd change the agreement. Not only is he great.. but also merciful! |
| ||
@Krischan: Impressive work! How you think about LOD system (1-2 additional low-detail levels for every sectors, pre-calculated of course)? |
| ||
This does not work for me. I get a "Texture does not exist" error and i cant find wich one. The screens look impresive, i realy want to see this in action. |
| ||
Mikhail: I dunno how to weld the quadtree chunks. You? Ferret: I downloaded the package again, created a qts.bb from the first post here and copied the dwarf.zip contents to the models folder - and everything is working. What configuration do you have (CPU, RAM, GFX, OS)? |
| ||
It could be ferret needs to update his Blitz3D for dds support. |
| ||
@Krischan: It's simple. Leave edges of chunks without changes that there were no incorrect connections. Unite internal triangles! p.s. I can draw image if it difficult to understand. |
| ||
... and image :)![]() p.s. lod0 - [original mesh tris qty] * 0.26, lod1 - [original mesh tris qty] * 0.07 |
| ||
Sorry, i should check for updates before asking questions. I was wondering what a .dds file was, never heard of it before :) Updating now. |
| ||
It works :), got a nice framerate to. Great work Krischan. |
| ||
Wow impressive! Nice screenshots. |
| ||
Man this is sweet! Gonna try this out for my flight sim as the terrain engine. :) |
| ||
Krischan, I'm trying to use .dds textures for the texturemap and colormap but it's giving me a MAV at this line in the QTS_Texture() function. Any ideas why this line of code don't like a .dds texture?rgb=ReadPixelFast(Int(Floor(vx*cfactor)),Int(Floor(vz*cfactor)),cbuf) |
| ||
Not really. The line you posted is dependent on this command structure: Input: Colormap Image 2^n+1 (ex. 1025x1025) - each texel represents one vertex RGB color. - loaded AS IMAGE to the Global BT_ColorMap in the Function BT_InitGame() - BT_Colormap assigned to Function call QTS_CreateTerrain() in BT_InitTerrain() - again assigned in Function QTS_CreateTerrain() to Function QTS_Texture() - cbuf% is the Imagebuffer placeholder of the Image in the global BT_Colormap Not very complex. So I think your Image size doesn't match the total vertices dimensions 2^n+1. The x/y image coordinates gets calculated out of the actual Vertex coordinates in these lines: vx=VertexX(surf,v)+(QTS_HeightMapSize/2.0) vz=-VertexZ(surf,v)+(QTS_HeightMapSize/2.0) I think you should debug the results of vx/vz and compare if they match the image dimension or exceeds it. Question: why do you use a DDS Texture for the colormap image when PNG24 is sufficient (never gets loaded to VRAM)? |
| ||
No idea. But the colormap and texture maps are .jpgs. What PNG24 are you talking about? |
| ||
I orginally thought it might be more efficient to use .dds textures. But if you're saying there's no benefit then I'll move on to my next to-do list item. |
| ||
In my very first versions I used DDS but stopped working on it because I couldn't write to loaded DDS textures using Blitz3D (dunno if it is possible using Blitzmax). But I had to write to textures to avoid the ugly tile seams (now I just copy one side of a texture block with the opposite side of the adjacent block - take a look at the part below "BT_UpdateBar("Align Texture Seams",y,BT_Tiles-1,80,90)" - and all seams vanish). Move on, its a waste of time. PNG24 is color/pixelperfect for the colormap but you won't notice any difference using a high quality JPG. It makes no sense to use a DDS format if you only load it as a (2D) image as a storage for vertex colors. |
| ||
Hm...I guess I need more practice. Now that I have the Pro version of L3DT, I'm having trouble getting anything anywhere near as nice as your maps... :( |
| ||
Hmmm...I'm getting as far as putting in the .hdr values of width height top left right bottom etc....and it loads a tiny 128x128 map that is mostly green. I'm following the tutorial very closely too. Any suggestions Krischan? |
| ||
128 is the Wilbur default size for binary surfaces. In my tutorial I explained how to get and enter the values of the exported map out of the HDR file, including a screenshot. See page 5. |
| ||
Actually I went with exporting the terrain from 3DEM in .ter and importing it into wilbur as a .ter. Worked good. But my newest question is scale. If my terrain is 10Km x 10Km and the colormap is 1025x1025 and I break the terrain up into an 8x8 segment....how many blitz units in size is each segment? |
| ||
To export the terrain from 3DEM direct into TER is actually a bad idea. Larger terrains will be cut and resampled by 3DEM automatically with a bilinear filtered seam around - ugly!!! Better try my description in the tutorial and you won't expirience detail loss and get no seams... Your question: it always depends on the source size of the terrain in width/height, not the scale, you must distinguish between these two values! If you have a heightmap with 1025x1025 then your colormap must match this size. The (horizontal) scale value doesn't matter for this case. One Texel = One Vertex! 10x10km describes the scale, but even a 128x128 terrain can be scaled up to 500x500km or someting like that (very low detail then but the source size never changes)! Each segment in your example is 1024/8 = 128x128. Take a look at my tutorial at the end: A map with 1 arcsecond means: The earth has a circumfence at the equator of about 40,075.02 km, which is 40,075,020 million meters. 1 Arcsecond is 1/60 of 1 Arcminute is 1/60 of 1 degree. So one pixel in a map with a 1 arcsecond resolution is 40,075,020 / (360*60*60) = 30.922 meters. This is approximate the value of the horizontal scale of 30 used in Terragen. If you use other resolutions than 1 arcsecond recalculate the resolution again to get a realisitic dimension of your map! So 30m desribes the distance between two points/texel/vertices on the source map or easier: the "size" of one point in space. So 30m is really coarse for a RPG but fine enough for a flight sim. You must get a sense of scale to create these realisitic environments. It took me some time to understand but after that I was really impressed how large our planet is in reality and how easy you can set up realistic environments as i described before :-) |
| ||
Mine actually came out really nice but I went the .ter route because I couldnt' get the .bin import to work. So you're saying each segment is 128 units? Ah so 30 units in between each vertice then? Ok there has to be a formula without going into all the arcseconds stuff lol. :) I'm using all the default setting you're using. And I'm breaking the terrain up into 8x8 segments. Just trying to get a handle on how big each segment is in blitz units so I can apply AABB checking. I'm also looking into LOD by way of storing a second set of meshes in MeshTileLOD() and substituting in the lower mesh based on distance/AABB checking. |
| ||
The link is broken :( Any chance to have it back up? |
| ||
Fixed it. I changed my hosting provider and the file had upper case letters and I think Linux doesn't like that :-) |
| ||
This looks very nice, but I cannot run it. I've downloaded both the qts.bb file and the dwarf and I've setup everything correctly. I'm getting a MAV in the BT_LoadTexture function when it tries to load the texture "detail2.dds". EDIT: Nvm, I've gotten it to work after updating Blitz3D. I was still using V1.90. |
| ||
This is awesome stuff, Im currently useing it for a project. Thanks Krischan |
| ||
Has anyone an Octtree implementation? |
| ||
Wow, Christian, that's excellent work! Hast Du sehr gut gemacht! :) |
| ||
how fast woulde it be if grass was added? and trees? |
| ||
Idk, but i'd LOVE to see that! |
| ||
Man I just hate to see this thread sink into oblivion. Bump for the masses. Is anyone doing anything with this? I'd love to see it if so. |
| ||
BlitzTiles is a spectacular piece of work. As is BlitzSky. I wish this was ported to OGL + BMax or Xors3D + BMax. That would be the ****. |
| ||
This would be great if ported to miniB3D... but it's a LOT of code, really a insane job to do... :( |
| ||
I was busy, so I just saw this. Thanks a lot for sharing! |
| ||
I simply REFUSE to let this thread die :) |
| ||
Blitz Tiles is Amazing but are they still selling it? |
| ||
It's FREE =D It uses the GPL License =D Free for all commercial & non-commercial games =D |
| ||
It doesn't use the GPL license - it's a modified BSD license - please read the whole thread again :-p 100 times :-D But yes, it's free. |
| ||
@krischan, whats ur email mate? |
| ||
Update! No, no, it isn't the miniB3D version :-D A few days ago I've been watching LOTR in TV again and I asked myself, how the "original" locations from Tolkiens map would look like in 3D. I've been searching the whole internet for usable (height)maps and finally found the MERP project for Oblivion. Their base map is not exactly like Tolkiens original maps but you can get a good feeling for the area. And my BlitzTiles is perfect for the atmospheric ambiente :-) Unfortunately, I had to resize the map down to 2049 resolution, which is over 10000 in the original! Blitz3D couldn't handle a larger map. But now start together with Gimli in the misty mountains range facing the sundown westwards over Eriador. Can you spot the shire and Hobbiton? Oh wait, I didn't add this... ![]() Grab it here and have fun there: Download (7.3MB 7zip SFX) But wait! There is more. BlitzTiles is now able to SAVE the world as a B3D file and I added a simple viewer using my BlitzSky. It is still experimental but gives nices results at this point: Download BlitzTiles Update 1.02 (0.1MB ZIP) Just unzip and overwrite all files in the root of the BlitzTiles folder. BT will create a B3D subdirectory and after the scene has been rendered you will find a "terrain.b3d" in the corresponding subfolder and you can view the map very easily starting the viewer.bb and change the map name variable: Middle Earth total view in the viewer ![]() Last edited 2011 Last edited 2011 |
| ||
This is gobsmackingly impressive, I used to try and render landscapes in vistapro on the miggy some 15 odd years ago. My gps plotter does altitude as well, now to generate some landscapes from gps data, that'd be sweet! |
| ||
Must be missing the textures |
| ||
I updated the package, it is now possible to download a complete installation and separate maps here: Main Program: BlitzTiles 1.02 (4.4MB) MAP: Desert Mesa 1025x1025 (3.7MB) MAP: Grand Canyon 1025x1025 (5.5MB) MAP: Monkey Island 2049x2049 (5.2MB) MAP: Middle Earth 2049x2049 (7.3MB) MAP: Zillertal 1025x1025 (5.1MB) Tutorial how to create real Terrains for BlitzTiles @Doggie: ?!? can you explain? It's working fine here and I added everything you need. Last edited 2011 |
| ||
Hi Krischan, {EDIT} Ran in debug mode - found the problem - I needed to extract the middle earth file into the maps directory - works now! Great work, you might want to include the middle earth map file within the maps directory so that blitz tiles complies without a memory violation. Maybe my fault for not reading install intructions - if so sorry. I'd a very quick glance at the tutorial, great detailed instructions. [End Edit] Last edited 2011 Last edited 2011 |
| ||
I get a MAV in qts.bb right where it reads terragen data seekfile(file,20):QTS_Size=ReadInt(file) |
| ||
Did you install the map(s) in the "maps" subfolder, too? Take a look at the blitztiles.ini, first entry. For example: [BlitzTiles] Scene=middleearth There must be the corresponding map "maps\middleearth\" folder with - middleearth.ini - middleearth.ter - middleearth_colormap.jpg - middleearth_preview.jpg - middleearth_texture.jpg I deleted my folder and I get the same error message like you so this should fix it. @Blitzplotter: yeah, I thought about that but I wanted to keep the main program separated from the maps. But hey guys, each of you has 100 billion neurons, use some of them :-D |
| ||
You've done a great job krischan, it is an idea to make people work a little to use your code, and it is testament to your logical file structure to populate the map directory with. A. Map file. I have a directory checker function I might thread into your sweet code that may prompt a humble user to slap a map file i the relevant slot ,I do love your program ! I. Need everyone of my .5 billion neurons to integrate my gps app with your tile thing, however life and work kicks back in in less than a week so chance'll be a fine thing! One of my recent change log entries was Feb 11! Last edited 2011 |
| ||
Feel free to create a 1.03 version with this addition but don't put too much effort in it - if I have time I think about converting this project to miniB3D, clear up some errors and perhaps speed up the terrain chunk generation. BlitzTiles is nice but not very useful right now (or has anybody used it beside Chroma?). Last edited 2011 |
| ||
OK. Thanks. Had neglected to make sure the files copied in correctly. Weird thing was the program shut down with file does not exist on "CloseFile f" so I rem'ed it out and it's working fine. Have to play around with it. DOG Last edited 2011 |
| ||
Tried invoking my readfile function but was getting MAVs so have gave up for now - As long as the maps directory is populated with a map it works great! |
| ||
I would love to see a miniB3D version at some point too Krischan. |
| ||
At the moment, I'm experimenting with warner's minib3d terrain functions. Here are two screens showing my efforts in miniB3D from today (VERY early stage). The view is towards the "Matterhorn" mountain in Switzerland. I'm using a 1024x1024 heightmap and a 4096x4096 normalmap, the "shadows" are calculated with simple DOT3 shading with the normalmap applied to the mesh which gives a nice day/night cycle.![]() ![]() Now I need to convert my Terragen loader. And I'm still not sure how to split the tiles here. But it's running very fast without splitting already. Last edited 2011 |
| ||
Looks great, very Skyrim'ish! |
| ||
Wow fantastic work! Very impressed :) |
| ||
<3 I LOVE THE MIDDLE EARTH MAP! =D |
| ||
Krischan, when I try to use the sun and the moon combined with FastExt, for some reason, the sun/moon has a weird white quad in front of the camera.... Its weird. How do I fix it? |
| ||
Krischan, when I try to use the sun and the moon combined with FastExt, for some reason, the sun/moon has a weird white quad in front of the camera.... Its weird. How do I fix it? |
| ||
Sry for the double post... i accidently hit submit twice |
| ||
Last post in this thread rez. http://blitzbasic.com/Community/posts.php?topic=87026#1013396 |
| ||
Thanks alot, Stayne! :) |
| ||
These screenies are all very well, but most 3d games happen from an on-the-ground perspective. How does this lib handle that issue? |
| ||
Is there a way to use the fastext lib to give a glow to both the sun AND the moon? is there a way around this terrible quad glitch? >< |
| ||
Anyone know if I can use QTS terrain and blitztiles in my commercial project? |
| ||
You have a commercial project in the works yet you don't have enough common sense to read the License.txt file? Scary stuff kiddo. |
| ||
I checked... U dont understand what Im asking... Im asking if "QTS" is royalty free.. NOT BlitzTiles. I RESENT ur comment, sir :< |
| ||
Can anyone else answer my question instead of misreading my question? -.- |
| ||
Yes, they both allow you to use in free or commercial games without paying royalties. You're not allowed to make a commercial tool with QTS, only a commercial game. You need to have a BlitzTiles.TXT file in your game folder that contains a copy of the full copyright notice of BlitzTiles, it's required in the license. Optionally, e-mail the author (Krischan) about any improvements you made to the BlitzTiles library and in what projects you've used his library. Again, this is optional. |
| ||
Thanks, Kryzon! :) |
| ||
=) |
| ||
Hello, a question, you can stop time?, Ie move the clouds and all that, but that the sun is always in a position to get him into this Scena. |
| ||
Please re-translate that. i dont understand a WORD ur saying.. |
| ||
Please re-translate that. i dont understand a WORD ur saying.. As I can do to make the sun stand still?, Meaning that the clouds move but there is no day and night, if not one day, and only move the clouds. |
| ||
Guys. do u understand a WORD? Can someone PLEASE make sense of this? |
| ||
=( |
| ||
Hint: take a look at the BT_UpdateScene() function, the vars time and/or BT_SunAngle take care of all the movement there, clouds, sky, light etc.. But that's not hard to find out by yourself if you read the well commented source... |
| ||
Whoa, lay off the guy. He doesn't speak English as his first language. I don't understand a word you say sometimes. |
| ||
Hint: take a look at the BT_UpdateScene() function, the vars time and/or BT_SunAngle take care of all the movement there, clouds, sky, light etc.. But that's not hard to find out by yourself if you read the well commented source... Thanks!! |
| ||
Im just trying to help.... jesus.... i dont speak any other language besides english. how am i SUPPOSED to help? |
| ||
i dont speak any other language besides english. how am i SUPPOSED to help? If you can't offer any help then you shouldn't. Obviously his question was not directed at you, anyway. It was directed to the author or someone who knows how the program works. In your posts up higher in this thread you were asking for help, too. So, if you don't understand it then you shouldn't be expected to answer questions about it. |
| ||
Look, I'm sorry, ok? I was only trying to help... :( Anyways. Can we PLEASE get back on topic? And came someone PLEASE help fix that stupid quad glitch with the FastExtensions? Thanks! :) Last edited 2012 |
| ||
Krischan, when I try to use the sun and the moon combined with FastExt, for some reason, the sun/moon has a weird white quad in front of the camera.... Its weird. How do I fix it? If I remember correctly, there is a version called Blitz Sky, in that there is a problem when attempting to use with FastLibs, now well in the land BtlizTiles version, the version of Heaven will not have that problem, the difference is that the moon does not looks so bright. So as a solution you must use version BlitzTiles Sky and Sky Blitz. >>> http://www.blitzbasic.com/Community/posts.php?topic=87026 Last edited 2012 |
| ||
Thanks alot, Yue :) And uh, sorry if I offended u. I didnt mean to :) |
| ||
@Thundros HideEntity BS_MoonBright2 BlitzSky Run + FastLibs =) or Find BlitzSky.bb EntityBlend BS_MoonBright2,5 and change EntityBlend BS_MoonBright2,1 =) Last edited 2012 Last edited 2012 |
| ||
=) http://youtu.be/Gx2Qx-Cv-VQ |
| ||
Can someone make it so that we can import a terragen file just like this, only with an import menu? |
| ||
Gonna have to code your own editor Thundros. |
| ||
I already did... I just need to know how to import a full TER file, textures and all. |
| ||
Take a look in the terratiles_pre-quadtree.bb, there is a function called "LoadTerragen". For the import menu: I COULD make it but I put all my efforts in my new planet generator now. Please code it yourself and like I said before - BlitzTiles is well commented. |
| ||
I already made the import menu. I just need the function to PROPERLY load ter files the EXACT way BlitzTiles does |
| ||
Still looking forward to playing with this some more, unfortunately is going to have to wait until my current study year finishes - September!!! AAaarrgh. Last edited 2012 |
| ||
You might have noticed that TERRATILES is exactly like BLITZTILES, with the difference that Blitztiles is using a quadtree instead. So I assume that you either didn't take a look at this easy and commented function or you don't understand it. In both cases, I can't help (SYS 64739 ;-). |
| ||
Does this texture each mesh of the terrain? And doesnt this have that problem with the invisible lines in the middle of each terrain? Last edited 2012 |
| ||
Actually, theres a MAJOR difference. can u pull out all the functions needed from blitz tiles, to load the terrain, and texture it? |
| ||
Bump :) |
| ||
Anyone? |
| ||
Not Found The requested URL /bb/blitztiles/grandcanyon.exe was not found on this server. |
| ||
The link is wrong (the text is correct) it should be map_grandcanyon.exe |
| ||
Hello, I do not understand use the google translator . Whenever I try to download I get this notice. "Not Found The requested URL /bb/blitztiles/grandcanyon.exe was not found on this server." |
| ||
@Yue>>you can use the links at the top, they are ok here... Main Program: BlitzTiles 1.02 (4.4MB) MAP: Desert Mesa 1025x1025 (3.7MB) MAP: Grand Canyon 1025x1025 (5.5MB) MAP: Monkey Island 2049x2049 (5.2MB) MAP: Middle Earth 2049x2049 (7.3MB) MAP: Zillertal 1025x1025 (5.1MB) |
| ||
Fixed. |
| ||
Hi Thanks for fixing. I have a new problem, I think I'm doing something wrong. The steps I make are the following. run Blitztiles.bb Here I created a file in the B3D, Desert.b3d directory. Run the viewer.bb. Here are the disadvantages: I can not carry out any task on the terrain mesh. For example if use TurnEntity Mesh, 0, 1, 0, only one picture field moves. ![]() TurnEntity If I try scalar field does not work, if I want to put collisions either, Not that I'm doing wrong. Greetings |
| ||
You are using the very *experimental* B3D save mode which uses a custom BB3D write function. It writes all 8x8=64 separate meshes into one single, large B3D file. Unfortunately it doesn't behave like a "normal" mesh - I don't have a solution for this. Hint: check the B3D file format specifications and the function "WriteBB3D" in the blitztiles.bb as I think that the file is not 100% complatible with Blitz3D because I'm not sure if all needed variables are written to the B3D file: http://www.blitzbasic.com/sdkspecs/sdkspecs/b3dfile_specs.txt |
| ||
Thanks You!, Fix here.Function WriteBB3D( f_name$,tiles%,scaler#=1.0 ) file=WriteFile( f_name$ ) b3dSetFile( file ) b3dBeginChunk( "BB3D" ) b3dWriteInt( 1 ) ;version b3dBeginChunk( "TEXS" ) ; list all textures used by the mesh For x=0 To tiles-1 For y=0 To tiles-1 b3dWriteString( "X"+x+"Y"+y+".bmp" ) ;texture file b3dWriteInt( 16+32 ) ;flags b3dWriteInt( 2 ) ;blend b3dWriteFloat( 0 ) ;x in tex 0 (hu?) b3dWriteFloat( 0 ) ;y in tex 0 b3dWriteFloat( 1 ) ;x scale 1 b3dWriteFloat( 1 ) ;y scale 1 b3dWriteFloat( 0 ) ;rotation 0 Next Next b3dEndChunk() ;end of TEXS chunk For x=0 To tiles-1 For y=0 To tiles-1 b3dBeginChunk( "BRUS" ) b3dWriteInt( 1 ) ;1 texture per brush b3dWriteString( "X"+x+"Y"+y ) ;name b3dWriteFloat( 0.5 ) ;red b3dWriteFloat( 0.5 ) ;green b3dWriteFloat( 0.5 ) ;blue b3dWriteFloat( 1 ) ;alpha b3dWriteFloat( 0.0 ) ;shininess b3dWriteInt( 1 ) ;blend b3dWriteInt( 2 ) ;FX b3dWriteInt( i ) ;brush index i=i+1 b3dEndChunk() ;end of BRUS chunk Next Next i=0 b3dBeginChunk( "NODE" b3dWriteString( "Scene_Root" ); Node Root b3dWriteFloat( 0 ) ;x_pos b3dWriteFloat( 0 ) ;y_pos b3dWriteFloat( 0 ) ;y_pos b3dWriteFloat( 1 ) ;x_scale b3dWriteFloat( 1 ) ;y_scale b3dWriteFloat( 1 ) ;z_scale b3dWriteFloat( 1 ) ;rot_w b3dWriteFloat( 0 ) ;rot_x b3dWriteFloat( 0 ) ;rot_y b3dWriteFloat( 0 ) ;rot_z For x=0 To tiles-1 For y=0 To tiles-1 b3dBeginChunk( "NODE" ) b3dWriteString( "X"+x+"Y"+y ) b3dWriteFloat( 0 ) ;x_pos b3dWriteFloat( 0 ) ;y_pos b3dWriteFloat( 0 ) ;y_pos b3dWriteFloat( 1 ) ;x_scale b3dWriteFloat( 1 ) ;y_scale b3dWriteFloat( 1 ) ;z_scale b3dWriteFloat( 1 ) ;rot_w b3dWriteFloat( 0 ) ;rot_x b3dWriteFloat( 0 ) ;rot_y b3dWriteFloat( 0 ) ;rot_z WriteMESH( BT_MeshTile(x,y),i,scaler ) b3dEndChunk() ;end of NODE chunk i=i+1 Next Next b3dEndChunk() ; Node Here. b3dEndChunk() ;end of BB3D chunk CloseFile file End Function |
| ||
It seems that the above is not a solution to the problem, because the mesh is created with all its triangles. Whereas if the arrangement is omitted, tris renderings are often less depending on the angle of vison camera. But I think I have the solution, I export the terrain without the root scene I export posterioormente another in accordance to establish collisions on the ground, which make invisible. |
| ||
![]() Sorry, this does not work here, apparently the ground is very small in my project mars, my question is: I have to make my model rover many smaller? |
| ||
Ok, no problem here. :) I just want you to know that I'm using his powerful library in my project : D ![]() |
| ||
EXCELLENT QUALITY, Yue! GOOD job! =D |