Convert .3DS or .OBJ files to .MD2 - augmented-reality

I am using Metaio's Creator to create an AR event and using a model the client purchased from TurboSquid.com. Everytime I try to convert the .3DS file to an .MD2 file I get an error that there are to many polygons.
Is there a program that can automatically convert the .3DS or .OBJ to an .MD2 without lowering the polygon count or automatically taking polygons out without risking the integrity of the model?

MD2 only supports 4096 polygons inherently. As #0r10n said, you have to reduce the number of polygons to make it working with MD2. For conversion, I had the best experience using the QTip plugin for 3Ds Max here: http://qtipplugin.com/
Very easy to use and very powerful.

If the model has too many polygons you can import it into a 3DCC-tool like Max, Maya or Blender and use their tools to reduce the polygon-count.
For example using Blender 2.49 you can use the PolyReducer-Script, that preserves UV-Coordinates.

Related

Creating a sub-texture, from an existing texture, using D3D9

I'm working on an older project that uses D3D9 for rendering 3D environments.
I have a texture file loaded into memory, that I'm applying onto a simple 3D model for rendering. I'm loading this file using the D3DXCreateTextureFromFileInMemory function (MS Docs function link: https://learn.microsoft.com/en-us/windows/win32/direct3d9/d3dxcreatetexturefromfileinmemory), and everything works okay.
However, instead of simply reading & loading the entire texture file, I want to only be able to read & load a square portion of it (a sub-texture of sorts). I have a pair of UV coordinates of the supposed square portion of the sub-texture (one UV coordinate for top-left corner of square, one for the bottom-right), relative to the main texture file, but I can't find a D3D9 function that does such a thing (I believe the correct wording for this would be a "Texture Atlas", but I've only heard it a couple of times and I'm not sure).
Here is an example diagram, to make sure my question is clear:
Looking over the MS Docs for the D3D9 texture functions, D3DXCreateTextureFromFileInMemoryEx (MS Docs link: https://learn.microsoft.com/en-us/windows/win32/direct3d9/d3dxcreatetexturefromfileinmemoryex) can also be found with is a supposed upgrade of the previous D3DXCreateTextureFromFileInMemory function, however it only accepts a "height" and a "width" parameters, but not any sort of positional parameter pair. There are also alternative functions that use "Resources" instead of files in memory, but they also do not appear to accept any sort of positional parameters (such as D3DXCreateTextureFromResourceEx, MS Docs link: https://learn.microsoft.com/en-us/windows/win32/direct3d9/d3dxcreatetexturefromresourceex).
There are also several functions for a "UV Atlas" present in the MS Docs archives (https://learn.microsoft.com/en-us/windows/win32/direct3d9/dx9-graphics-reference-d3dx-functions-uvatlas), however I do not think those would be helpful to me.
Is what I'm trying to achieve here even possible using D3D9? Are there any functions that I may be missing that could help me achieve this goal?

What is the best options for tippecanoe to process line string features?

I have a GeoJSON file with a FeatureCollection (more than 300 000 features) of LineStrings. It is a road traffic records. I need to convert it to the MVT format using Tippecanoe. I'm trying to convert the GeoJSON with this params:
tippecanoe data.geojson -pf -pS -zg --detect-shared-borders -o data.mbtiles -f
Then I uploading it to Mapbox account as a tileset and use to render with Mapbox GL JS. And there is a problem - not all the features are visible. Moreover, if if will reconvert the GeoJSON file - then I will get a different result! So - what is the best options to use with tippecanoe to convert all the features (lineStrings) without oversimplification to use it with Mapbox GL JS?
P.S. One more thing which I noticed is that datasets uploaded with Mapbox Studio and then converted to tileset has some info like this: "This layer contains mostly LineStrings", but with my own tilesets converted with the tippecanoe I see a next message: "* No dominant geometry type*"
-ae will auto-increase the maxzoom if features are still being dropped at that zoom level. But when zoomed out it doesn't always look good depending on the type of features (e.g.: mising cadastre doesn't look good)...

Can I get some 3D model file(s) from 3D ultrasound?

do you know anybody if it is possible to get some model file from doctor when he made 3d ultrasound of pregnant woman? I mean something like DICOM (.dcm) file or .stl file or something like that what I can then work with and finaly print with 3D printer.
Thanks a lot.
Quick search for "dicom 3d ultrasound sample" resulted in one that you might be able to use for internal testing. You can get the file from here
Bonjour,
The first problem you will face is the file format.
Because of the way the images are generated, 3D ultrasound data have voxels that are expressed in a spherical system. DICOM (as it stand now) only support voxels in a Cartesian system.
So the manufacturers have a few choices:
They can save the data in proprietary format (ex: Kretzfile for Ge, MVL for Samsung).
They can save the data in private tags inside a DICOM file (Ge, Hitachi, Philips)
They can re-format the voxels to be in Cartesian, but then the data has been transformed and nobody like that. And anyway, since they also need to save the original (untransformed) data, the companies that do offer Cartesian voxels, usually save them in the same way as the original, so they are not saved in normal DICOM tags, but in their proprietary version.
This is why most of the standard software that can do 3D from CT or MR will not be able to cope with the data files.
Then the second problem is the noise. Ultrasound datasets are inherently very noisy! Again standard 3D reconstruction software where designed for CT or MR and have problems with this.
I do have a product that will read most of the 3D ultrasound files and create an STL model directly from the datasets (spherical or Cartesian). It is called baby SliceO (http://www.tomovision.com/products/baby_sliceo.html)
Unfortunately, it is not free, but you can try it without any licenses. Give it a try and let me know if you like it...
Yves

How to export from 3DSMAX to FBX with tangents and texture coords

I bought a model from TurboSquid in 3DS format and am trying to load it into an XNA project.
I've exported to FBX and turned ON the "Tangents and Binormals" export options.
If I do not set basicEffect.TexturesEnabled, it renders but without textures. If I turn on TexturesEnabled, though, I have problems:
If I turn off "Generate Tangent Frames" in the content processor, I get "The current vertex declaration does not include all the elements required by the current vertex shader. TextureCoordinate0 is missing." at runtime.
If I turn on "Generate Tangent Frames" in the content processor, I get "Required Vertex Channel TextureCoordinate0 no found" at build time.
So, the question is how to take a model in 3DS, export it so I can use it as an FBX model in XNA and get all of the UV mapping and normals correct. Even the VS2012 FBX preview can render it properly, so it seems like it should have all it needs, but no.
This can be a number of things. If the model was using a 3rd party plugin or materials other than standard, this will cause the UVs not to align.
My suggestion is to make sure that the materials are in a standard format
Ungroup the entire model if necessary.
lastly,
If the model is not rigged, make sure it's an editable poly.
From there you can try and export the model again. Are there any other formats that XNA can import?
If this doesn't help, please go to Support.TurboSquid.com and create a support ticket. We can try our best to help.
Christopher Briere
TurboSquid Product Support

How to export .3ds file for using RenderMonkey from 3dsMax?

How to export .3ds file for using RenderMonkey from 3dsMax 2010?
When I look into Stream Mapping in RenderMonkey,
there are POSITION, NORMAL, TEXCOORD, TANGENT, BINORMAL, TESSFACTOR etc.
I want to know how that information export for sending vertex shader as streaming data.
Thanks in advance.
Which streams do you want/need? A 3ds usually contains POSITION, NORMAL, and TEXCOORD. If you export from 3DSMax to an OBJ then you have more control over exactly what gets exported. TANGENT and BINORMAL are used for shaders such as bump-mapping and are generated by RenderMonkey. I don't know how to use TESSFACTOR. Just make sure that your VS input struct uses the correct semantic (pink text in rendermonkey) for each input stream and RM will populate them appropriately.
You can use DirectX Exporter for 3ds Max to export your scenes to a x file which contains texcoords, normal and binormal. The latest release can even convert a standard material with multiple UV coordinates to a DirectX material(.fx) and generate shader code such as tangent-space normal mapping.

Resources