Jump to content
The Dark Mod Forums

mkultra333

Member
  • Posts

    17
  • Joined

  • Last visited

Posts posted by mkultra333

  1. Ok, thanks. :) I still haven't had a chance to check out the changes, I'm really swamped with stuff right now.

     

    Gah! Just as well, I think the above is wrong too... hehe, I'll get back to you.

     

    P.S. Don't worry, I'm not pressuring for this to be included soon, or even at all. Just posting it in case you think it's interesting and it saves you some time.

     

    Edit: I see what was throwing me. Light::Rotate gets called multiple times for a single light rotation, so the flip/swaps were being applied multiple times. That, plus the difference between _lightTarget and _lightTargetTransformed.

     

    Now I change _lightTargetTransformed instead, and only apply the projections at the bottom if the rotation hasn't already been achieved using flip/swaps. If I do that, the second version of the rotation flips/swaps is correct.

  2. Ah, today I realized the swaps/flips I gave are wrong, they work the first 90 degree rotation but then "undo" themselves on the second.

     

    Heres the correct code:

     

       #define BZN_ROTEPSILON	0.000001
      void Light::rotate(const Quaternion& rotation) {
       if (isProjected()) {
    
    	   Quaternion NewRotation = rotation;
    
    	   if(			// X Axis 90 degree rotation
    					   (rotation.w()>-0.707107-BZN_ROTEPSILON) && (rotation.w()<-0.707107+BZN_ROTEPSILON)
    			   &&  (rotation.x()>-0.707107-BZN_ROTEPSILON) && (rotation.x()<-0.707107+BZN_ROTEPSILON)
    			   &&  (rotation.y()>0.0-BZN_ROTEPSILON) && (rotation.y()<0.0+BZN_ROTEPSILON)
    			   &&  (rotation.z()>0.0-BZN_ROTEPSILON) && (rotation.z()<0.0+BZN_ROTEPSILON)
    		   )
    	   {
    		   Vector3 LTarget;
    
    		   LTarget=Vector3(_lightTarget.x(), _lightTarget.z(), -_lightTarget.y());
    		   _lightTarget=LTarget;
    
    		   LTarget=Vector3(_lightRight.x(), _lightRight.z(), -_lightRight.y());
    		   _lightRight=LTarget;
    
    		   LTarget=Vector3(_lightUp.x(), _lightUp.z(), -_lightUp.y());
    		   _lightUp=LTarget;
    
    		   LTarget=Vector3(_lightStart.x(), _lightStart.z(), -_lightStart.y());
    		   _lightStart=LTarget;
    
    		   LTarget=Vector3(_lightEnd.x(), _lightEnd.z(), -_lightEnd.y());
    		   _lightEnd=LTarget;
    
    		   NewRotation=Quaternion(1.0, 0, 0, 0);	
    	   }
    
    	   if(			// Y Axis 90 degree rotation
    					   (rotation.w()>0.707107-BZN_ROTEPSILON) && (rotation.w()<0.707107+BZN_ROTEPSILON)
    			   &&  (rotation.x()>0.0-BZN_ROTEPSILON) && (rotation.x()<0.0+BZN_ROTEPSILON)
    			   &&  (rotation.y()>0.707107-BZN_ROTEPSILON) && (rotation.y()<0.707107+BZN_ROTEPSILON)
    			   &&  (rotation.z()>0.0-BZN_ROTEPSILON) && (rotation.z()<0.0+BZN_ROTEPSILON)
    		   )
    	   {
    		   Vector3 LTarget;
    
    		   LTarget=Vector3(_lightTarget.z(), _lightTarget.y(), -_lightTarget.x());
    		   _lightTarget=LTarget;
    
    		   LTarget=Vector3(_lightRight.z(), _lightRight.y(), -_lightRight.x());
    		   _lightRight=LTarget;
    
    		   LTarget=Vector3(_lightUp.z(), _lightUp.y(), -_lightUp.x());
    		   _lightUp=LTarget;
    
    		   LTarget=Vector3(_lightStart.z(), _lightStart.y(), -_lightStart.x());
    		   _lightStart=LTarget;
    
    		   LTarget=Vector3(_lightEnd.z(), _lightEnd.y(), -_lightEnd.x());
    		   _lightEnd=LTarget;
    
    		   NewRotation=Quaternion(1.0, 0, 0, 0);	
    	   }
    
    	   if(			// Z Axis 90 degree rotation
    					   (rotation.w()>-0.707107-BZN_ROTEPSILON) && (rotation.w()<-0.707107+BZN_ROTEPSILON)
    			   &&  (rotation.x()>0.0-BZN_ROTEPSILON) && (rotation.x()<0.0+BZN_ROTEPSILON)
    			   &&  (rotation.y()>0.0-BZN_ROTEPSILON) && (rotation.y()<0.0+BZN_ROTEPSILON)
    			   &&  (rotation.z()>-0.707107-BZN_ROTEPSILON) && (rotation.z()<-0.707107+BZN_ROTEPSILON)
    		   )
    	   {
    		   Vector3 LTarget;
    
    		   LTarget=Vector3(_lightTarget.y(), -_lightTarget.x(), _lightTarget.z());
    		   _lightTarget=LTarget;
    
    		   LTarget=Vector3(_lightRight.y(), -_lightRight.x(), _lightRight.z());
    		   _lightRight=LTarget;
    
    		   LTarget=Vector3(_lightUp.y(), -_lightUp.x(), _lightUp.z());
    		   _lightUp=LTarget;
    
    		   LTarget=Vector3(_lightStart.y(), -_lightStart.x(), _lightStart.z());
    		   _lightStart=LTarget;
    
    		   LTarget=Vector3(_lightEnd.y(), -_lightEnd.x(), _lightEnd.z());
    		   _lightEnd=LTarget;
    
    		   NewRotation=Quaternion(1.0, 0, 0, 0);	
    	   }
    
    
    
    
    
    	   // Retrieve the rotation matrix...
    	   Matrix4 rotationMatrix = matrix4_rotation_for_quaternion(NewRotation);
    
    
    
    	   // ... and apply it to all the vertices defining the projection
    	   _lightTargetTransformed = rotationMatrix.transform(_lightTarget).getProjected();
    	   _lightRightTransformed = rotationMatrix.transform(_lightRight).getProjected();
    	   _lightUpTransformed = rotationMatrix.transform(_lightUp).getProjected();
    	   _lightStartTransformed = rotationMatrix.transform(_lightStart).getProjected();
    	   _lightEndTransformed = rotationMatrix.transform(_lightEnd).getProjected();
    
    
    
    
    
    
    
       }
       else {
    	   m_rotation.rotate(rotation);
       }
      }

  3. The XreaLRadiant is almost the same code as the DarkRadiant with smaller changes all over the place like missing PK3 support, .PNG image file support and other stuff not supported by id Tech 4.

     

    We go the same route as Doom 3 concerning the detail brushes issue. The detail flags are ignored and instead we merge func_static entities as detail brushes into the worldspawn entity in the XMap2 map compiler. Quake 4 goes even further and removes the unused detail flags completely from the .map format.

     

    That is very interesting. XreaLRadiant plus XMap2 could be close to what I need afterall. I'm already using a modified Q3Map2, so it might not be that hard to get XMap2 functioning in my project.

  4. Here's the setup spotlight, it's at an angle to make later problems more noticable, but it'll happen for axial directions too.

     

    darkradiant0.jpg

     

     

    Now I rotate it 90 degrees around the x (I used the button this time, but the menu option does the same). The light draws ok, but notice the lighting keys, they have things like "4.38125e-006" in them, scientific notation. While this works ok, it's still slightly innaccurate. Probably not a big issue, especially for TDM mappers, but it needed to be changed for my project and the method I suggested gets rid of it.

     

    darkradiant1.jpg

     

    The issue with mirroring is more of a problem. Here's the same original light, only now it's part of a small scene.

    darkradiant2.jpg

     

    I flip the scene about the x axis via the button (menu does the same) and this is the result.

     

    darkradiant3.jpg

     

    With just the light selected, we see the keys. Part of the problem is that light_target really needs it's x value to be flipped, it should be -256.

     

    darkradiant4.jpg

     

    I have got flipping working now, via my own crude methods. I added the following function.

     

    // bzn mirroring for projected lights
    // check if the scale is a type of mirroring, if so flip the necessary values
    void Light::mirror(const Vector3& scale)
    {
    if (isProjected()) 
    {
    	if((scale.x()==-1.0) && (scale.y()==1.0) && (scale.z()==1.0))
    	{
    		Vector3 LTarget;
    
    		LTarget=Vector3(-_lightTarget.x(), _lightTarget.y(), _lightTarget.z());
    		_lightTarget=LTarget;
    
    		LTarget=Vector3(-_lightRight.x(), _lightRight.y(), _lightRight.z());
    		_lightRight=LTarget;
    
    		LTarget=Vector3(-_lightUp.x(), _lightUp.y(), _lightUp.z());
    		_lightUp=LTarget;
    
    		LTarget=Vector3(-_lightStart.x(), _lightStart.y(), _lightStart.z());
    		_lightStart=LTarget;
    
    		LTarget=Vector3(-_lightEnd.x(), _lightEnd.y(), _lightEnd.z());
    		_lightEnd=LTarget;	
    	}
    	else
    	if((scale.x()==1.0) && (scale.y()==-1.0) && (scale.z()==1.0))
    	{
    		Vector3 LTarget;
    
    		LTarget=Vector3(_lightTarget.x(), -_lightTarget.y(), _lightTarget.z());
    		_lightTarget=LTarget;
    
    		LTarget=Vector3(_lightRight.x(), -_lightRight.y(), _lightRight.z());
    		_lightRight=LTarget;
    
    		LTarget=Vector3(_lightUp.x(), -_lightUp.y(), _lightUp.z());
    		_lightUp=LTarget;
    
    		LTarget=Vector3(_lightStart.x(), -_lightStart.y(), _lightStart.z());
    		_lightStart=LTarget;
    
    		LTarget=Vector3(_lightEnd.x(), -_lightEnd.y(), _lightEnd.z());
    		_lightEnd=LTarget;	
    	}
    	else
    	if((scale.x()==1.0) && (scale.y()==1.0) && (scale.z()==-1.0))
    	{
    		Vector3 LTarget;
    
    		LTarget=Vector3(_lightTarget.x(), _lightTarget.y(), -_lightTarget.z());
    		_lightTarget=LTarget;
    
    		LTarget=Vector3(_lightRight.x(), _lightRight.y(), -_lightRight.z());
    		_lightRight=LTarget;
    
    		LTarget=Vector3(_lightUp.x(), _lightUp.y(), -_lightUp.z());
    		_lightUp=LTarget;
    
    		LTarget=Vector3(_lightStart.x(), _lightStart.y(), -_lightStart.z());
    		_lightStart=LTarget;
    
    		LTarget=Vector3(_lightEnd.x(), _lightEnd.y(), -_lightEnd.z());
    		_lightEnd=LTarget;	
    	}
    
    }
    
    
    }

     

    ... and added a call to it here

     

    void LightNode::evaluateTransform() {
    if (getType() == TRANSFORM_PRIMITIVE) {
    	_light.mirror(getScale());
    	_light.translate(getTranslation());
    	_light.rotate(getRotation());
    }
    else {...

     

    Not that this is the best way, I just use spotlights, flipping and 90 degree rotation a lot, so it was handy for me.

     

    I don't know if this is only happening for me.

  5. I noticed that if you do 90 degree rotations of spotlights via the menu you get a little floating point noise in the light's specifications.

     

    I made some code that makes the 90 degree rotation of spotlights clean. Doesn't seem to cause problems, though I don't know DarkRadiant well enough to really be sure. I modified void Light::rotate(const Quaternion& rotation) so that it detects 90 degree rotations and then uses flips and swaps to achieve that rotation rather than trigonometry.

     

    Here's the code, I don't know if you'd want this or not but feel free to use it if you do, GPL license.

     

       #define BZN_ROTEPSILON	0.000001
      void Light::rotate(const Quaternion& rotation) {
       if (isProjected()) {
    
    	   Quaternion NewRotation = rotation;
    
    	   if(			// X Axis 90 degree rotation
    					   (rotation.w()>-0.707107-BZN_ROTEPSILON) && (rotation.w()<-0.707107+BZN_ROTEPSILON) 
    			   &&  (rotation.x()>-0.707107-BZN_ROTEPSILON) && (rotation.x()<-0.707107+BZN_ROTEPSILON)
    			   &&  (rotation.y()>0.0-BZN_ROTEPSILON) && (rotation.y()<0.0+BZN_ROTEPSILON)
    			   &&  (rotation.z()>0.0-BZN_ROTEPSILON) && (rotation.z()<0.0+BZN_ROTEPSILON)
    		   )
    	   {
    		   Vector3 LTarget;
    
    		   LTarget=Vector3(_lightTarget.x(), -_lightTarget.z(), _lightTarget.y());
    		   _lightTarget=LTarget;
    
    		   LTarget=Vector3(_lightRight.x(), -_lightRight.z(), _lightRight.y());
    		   _lightRight=LTarget;
    
    		   LTarget=Vector3(_lightUp.x(), -_lightUp.z(), _lightUp.y());
    		   _lightUp=LTarget;
    
    		   LTarget=Vector3(_lightStart.x(), -_lightStart.z(), _lightStart.y());
    		   _lightStart=LTarget;
    
    		   LTarget=Vector3(_lightEnd.x(), -_lightEnd.z(), _lightEnd.y());
    		   _lightEnd=LTarget;
    
    		   NewRotation=Quaternion(1.0, 0, 0, 0);	
    	   }
    
    	   if(			// Y Axis 90 degree rotation
    					   (rotation.w()>0.707107-BZN_ROTEPSILON) && (rotation.w()<0.707107+BZN_ROTEPSILON) 
    			   &&  (rotation.x()>0.0-BZN_ROTEPSILON) && (rotation.x()<0.0+BZN_ROTEPSILON)
    			   &&  (rotation.y()>0.707107-BZN_ROTEPSILON) && (rotation.y()<0.707107+BZN_ROTEPSILON)
    			   &&  (rotation.z()>0.0-BZN_ROTEPSILON) && (rotation.z()<0.0+BZN_ROTEPSILON)
    		   )
    	   {
    		   Vector3 LTarget;
    
    		   LTarget=Vector3(_lightTarget.z(), -_lightTarget.y(), _lightTarget.x());
    		   _lightTarget=LTarget;
    
    		   LTarget=Vector3(_lightRight.z(), -_lightRight.y(), _lightRight.x());
    		   _lightRight=LTarget;
    
    		   LTarget=Vector3(_lightUp.z(), -_lightUp.y(), _lightUp.x());
    		   _lightUp=LTarget;
    
    		   LTarget=Vector3(_lightStart.z(), -_lightStart.y(), _lightStart.x());
    		   _lightStart=LTarget;
    
    		   LTarget=Vector3(_lightEnd.z(), -_lightEnd.y(), _lightEnd.x());
    		   _lightEnd=LTarget;
    
    		   NewRotation=Quaternion(1.0, 0, 0, 0);	
    	   }
    
    	   if(			// Z Axis 90 degree rotation
    					   (rotation.w()>-0.707107-BZN_ROTEPSILON) && (rotation.w()<-0.707107+BZN_ROTEPSILON) 
    			   &&  (rotation.x()>0.0-BZN_ROTEPSILON) && (rotation.x()<0.0+BZN_ROTEPSILON)
    			   &&  (rotation.y()>0.0-BZN_ROTEPSILON) && (rotation.y()<0.0+BZN_ROTEPSILON)
    			   &&  (rotation.z()>-0.707107-BZN_ROTEPSILON) && (rotation.z()<-0.707107+BZN_ROTEPSILON)
    		   )
    	   {
    		   Vector3 LTarget;
    
    		   LTarget=Vector3(-_lightTarget.y(), -_lightTarget.x(), -_lightTarget.z());
    		   _lightTarget=LTarget;
    
    		   LTarget=Vector3(-_lightRight.y(), -_lightRight.x(), -_lightRight.z());
    		   _lightRight=LTarget;
    
    		   LTarget=Vector3(-_lightUp.y(), -_lightUp.x(), -_lightUp.z());
    		   _lightUp=LTarget;
    
    		   LTarget=Vector3(-_lightStart.y(), -_lightStart.x(), -_lightStart.z());
    		   _lightStart=LTarget;
    
    		   LTarget=Vector3(-_lightEnd.y(), -_lightEnd.x(), -_lightEnd.z());
    		   _lightEnd=LTarget;
    
    		   NewRotation=Quaternion(1.0, 0, 0, 0);	
    	   }
    
    
    
    
    
    	   // Retrieve the rotation matrix...
    	   Matrix4 rotationMatrix = matrix4_rotation_for_quaternion(NewRotation);
    
    
    
    	   // ... and apply it to all the vertices defining the projection
    	   _lightTargetTransformed = rotationMatrix.transform(_lightTarget).getProjected();
    	   _lightRightTransformed = rotationMatrix.transform(_lightRight).getProjected();
    	   _lightUpTransformed = rotationMatrix.transform(_lightUp).getProjected();
    	   _lightStartTransformed = rotationMatrix.transform(_lightStart).getProjected();
    	   _lightEndTransformed = rotationMatrix.transform(_lightEnd).getProjected();
    
    
    
    
    
    
    
       }
       else {
    	   m_rotation.rotate(rotation);
       }
      }

  6. I've added the ability to set the detail flag back. [Edit: To my own version only.] I basically copied the "MakeVisportal" code, except that it goes through the brush faces setting them as detail. Seems to work except I haven't got undo functioning for it, but I haven't tested it very hard yet.

     

    Obviously not much use to TDM mappers, but I mention it just in case it comes up for someone else. DarkRadiant is a really cool editor, it'd be neat if it became the defacto map editor for the various Id related open source projects, though I realise this isn't the goal.

  7. I think this keyword has been stripped from the parsers, as D3 doesn't support this keyword anymore, at least I'm not aware of it.

     

    In principle, DarkRadiant should be capable of rendering transparent surfaces like decals, but this functionality is broken right now. The renderer code is being worked on, so it's likely that this will be working again in the future.

     

     

    This has been removed, as the D3 maps don't define any brushes as structural/detail anymore. GtkRadiant was able to do this, but for D3 editing it doesn't make sense to keep such an option in the menus.

     

    In an ideal setup, the Brush handling in DarkRadiant would be fully modular, such that it's possible to create a separate brush plugin for other games, replacing the vanilla one designed for D3. But as non-ideal as it is now, the Brush code is woven into the core code, and not replacable by a module. I've been thinking of defining the brush interface more clearly and separate the code out, but it's a lot of work, and there's always been more important stuff to work on.

     

     

    Ok, thanks.

     

    The lack of qer_trans is no biggie, especially since I have set the filters to hide the materials I wanted transparent.

     

    No detail/structural brush settings is a bit of a problem for me though, since I compile the bsp on a modified Q3Map2, and a simpler structural brush hull is preferred... I may have to try cludging something into the source code after all.

  8. I'm setting up DarkRadiant for use on a non-TDM project. Previously I was using GtkRadiant. So far it's going well, I have the textures showing in the editor and I've added a new .game file.

     

    A couple of quick questions though (I'll probably have more later on.)

     

    1. Is there an equivalent of the qer_trans material keyword to make things show up in the editor partially transparent?

     

    2. Is there a way to set brushes as structural or detail? It looks as if this option has been removed, it doesn't show up in the brush menu. The wiki article on keyboard shortcuts, http://wiki.thedarkmod.com/index.php?..._Keys_%26_Mouse, mentions these functions ("Make Detail" as Ctrl+M, "Make Structural" as Ctrl+Shift+S) but the shortcuts don't work. I notice that when I load maps made in GtkRadiant with the detail flag set, DarkRadiant preserves those flags on future saves, it just doesn't seem to allow you to change them.

  9. Out of curiosity: you're using it for mapping, or are you going to branch off to create your own editor?

     

    I'm building a project with the Ogre graphics library, the idea is to use the Q3A engine source, but with shadow mapping from shadow casting spotlights, small point lights from a deferred render stage, plus normal maps, specular maps... and maybe some SSAO. I also have a modified Q3Map2 for compiling, I'm already setup for compiling brush primitives and the Doom3 texture mapping matrices and can load the .bsp into Ogre (using my own loader rather than Ogre's outdated bsp scene manager.)

     

    Up till now I've been using a version of GtkRadiant I had as part of an old XreaL project, but just yesterday I discovered it has a fatal bug that I've got little chance of fixing, so the hunt was on for a new .map editor.

     

    I had modified that version of GtkRadiant to draw special wireframes for spotlights, and have special keys, so I was going to do that with DarkRadiant too. But I'd much rather use it without any change so I don't add bugs myself. So I'll probably change my other projects to use DarkRadiant's spotlights and points lights.

     

    Only tricky bit might be entities, but I'm not up to that yet, so I'll cross that bridge when I get there.

     

    Beware that I've been updating the boost libraries in the w32deps/w64deps recently (I'm still not done, due to sourceforge's server going at whopping 1.4 kB/sec for days now), so there might be some linker breakage in the next few days.

     

    The version I got compiled fine, and I may not need to do any modifications for a while, if at all, so it doesn't look like that's a problem.

  10. I see you already solved the problem on your own. I'm sure the folder hierarchy is mentioned somewhere in the compilation guide, but I'll better double-check.

     

    The reason we moved the w32deps/w64deps out of the trunk/darkradiant folder is to not clutter the tree for Linux users, who won't need to download the windows dependencies when checking out the trunk.

     

    Thanks for the words, in any case. :)

     

    Yeah, the wiki does tell you the proper folder structure, I just missed it because I assumed the default svn structure would be correct. It was late at night, I'd spent many a frustrating hour (again) downloading various other Radiant sources that didn't work. My eye's had kinda glazed over at that point... So my fault.

  11. Got it compiling. After downloading from...

     

    https://darkradiant.svn.sourceforge.net/svn...rkradiant/trunk

     

    ...I didn't realize I also needed to move the w32deps folder into the darkradiant folder. After I did that it was fine.

     

    Really pleased to see a working descendent of GtkRadiant functioning. I've been trying to get hold of an open source .map editor for ages, all the various versions out there are out of date and impossible to compile. This one looks really good.

  12. Hi.

     

    I downloaded DarkRadiant from the svn, I've followed the instructions for compiling in the wiki, but I get a ton of errors. I've got all the dependencies as well. I'm using XP sp2, VC9.

     

    My top level of folders looks like this:

     

    darkradiant

    w32deps

    w64deps

     

    I followed the instructions to use the DarkRadiant.sln file in the VCProjects folder.

     

    Here's a small section of the errors I get:

     

    1>------ Build started: Project: libiconv, Configuration: Release Win32 ------

    2>------ Build started: Project: libgdkglext, Configuration: Release Win32 ------

    1>Compiling...

    2>Compiling...

    1>win_iconv.c

    1>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\win_iconv\src\win_iconv.c': No such file or directory

    2>gdkglconfig.c

    1>Build log was saved at "file://C:\Ogre\UltraBSP\DarkRadiant\darkradiant\build\libiconv\BuildLog.htm"

    1>libiconv - 1 error(s), 0 warning(s)

    2>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\gtkglext\gdk\gdkglconfig.c': No such file or directory

    2>gdkglwindow-win32.c

    2>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\gtkglext\gdk\win32\gdkglwindow-win32.c': No such file or directory

    2>gdkglwglext.c

    2>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\gtkglext\gdk\win32\gdkglwglext.c': No such file or directory

    2>gdkglquery-win32.c

    2>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\gtkglext\gdk\win32\gdkglquery-win32.c': No such file or directory

    2>gdkglpixmap-win32.c

    2>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\gtkglext\gdk\win32\gdkglpixmap-win32.c': No such file or directory

    2>gdkglfont-win32.c

    2>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\gtkglext\gdk\win32\gdkglfont-win32.c': No such file or directory

    2>gdkgldrawable-win32.c

    2>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\gtkglext\gdk\win32\gdkgldrawable-win32.c': No such file or directory

    2>gdkglcontext-win32.c

    2>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\gtkglext\gdk\win32\gdkglcontext-win32.c': No such file or directory

    2>gdkglconfig-win32.c

    2>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\gtkglext\gdk\win32\gdkglconfig-win32.c': No such file or directory

    2>gdkglwindow.c

    2>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\gtkglext\gdk\gdkglwindow.c': No such file or directory

    2>gdkglversion.c

    2>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\gtkglext\gdk\gdkglversion.c': No such file or directory

    2>gdkglshapes.c

    2>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\gtkglext\gdk\gdkglshapes.c': No such file or directory

    2>gdkglquery.c

    2>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\gtkglext\gdk\gdkglquery.c': No such file or directory

    2>gdkglpixmap.c

    2>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\gtkglext\gdk\gdkglpixmap.c': No such file or directory

    2>gdkglinit.c

    2>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\gtkglext\gdk\gdkglinit.c': No such file or directory

    2>gdkglglext.c

    2>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\gtkglext\gdk\gdkglglext.c': No such file or directory

    2>gdkglenumtypes.c

    2>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\gtkglext\gdk\gdkglenumtypes.c': No such file or directory

    2>gdkgldrawable.c

    2>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\gtkglext\gdk\gdkgldrawable.c': No such file or directory

    2>gdkglcontext.c

    2>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\gtkglext\gdk\gdkglcontext.c': No such file or directory

    2>Generating Code...

    2>Build log was saved at "file://C:\Ogre\UltraBSP\DarkRadiant\darkradiant\build\libgdkglext\BuildLog.htm"

    2>libgdkglext - 19 error(s), 0 warning(s)

    3>------ Build started: Project: libxml2, Configuration: Release Win32 ------

    4>------ Build started: Project: mathlib, Configuration: Release Win32 ------

    3>Compiling...

    4>Compiling...

    4>aabb.cpp

    3>c14n.c

    3>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\libxml2\c14n.c': No such file or directory

    3>xpointer.c

    3>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\libxml2\xpointer.c': No such file or directory

    3>xpath.c

    3>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\libxml2\xpath.c': No such file or directory

    3>xmlwriter.c

    3>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\libxml2\xmlwriter.c': No such file or directory

    3>xmlunicode.c

    3>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\libxml2\xmlunicode.c': No such file or directory

    3>xmlstring.c

    3>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\libxml2\xmlstring.c': No such file or directory

    3>xmlschemastypes.c

    3>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\libxml2\xmlschemastypes.c': No such file or directory

    3>xmlschemas.c

    3>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\libxml2\xmlschemas.c': No such file or directory

    3>xmlsave.c

    3>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\libxml2\xmlsave.c': No such file or directory

    3>xmlregexp.c

    3>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\libxml2\xmlregexp.c': No such file or directory

    3>xmlreader.c

    3>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\libxml2\xmlreader.c': No such file or directory

    3>xmlmodule.c

    3>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\libxml2\xmlmodule.c': No such file or directory

    3>xmlmemory.c

    3>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\libxml2\xmlmemory.c': No such file or directory

    3>xmlIO.c

    3>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\libxml2\xmlIO.c': No such file or directory

    3>xlink.c

    3>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\libxml2\xlink.c': No such file or directory

    3>xinclude.c

    4>C:\Ogre\UltraBSP\DarkRadiant\darkradiant\tools\vcprojects\/../../libs\math/Vector3.h(24) : fatal error C1083: Cannot open include file: 'boost/format.hpp': No such file or directory

    4>quaternion.cpp

    3>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\libxml2\xinclude.c': No such file or directory

    3>valid.c

    3>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\libxml2\valid.c': No such file or directory

    3>uri.c

    3>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\libxml2\uri.c': No such file or directory

    3>triostr.c

    3>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\libxml2\triostr.c': No such file or directory

    3>trionan.c

    3>c1 : fatal error C1083: Cannot open source file: '..\..\..\w32deps\libxml2\trionan.c': No such file or directory

    3>Generating Code...

    3>Compiling...

     

    ... and it continues on in similar style for quite some time.

     

    I haven't changed any compiler settings, apart from compiling Release instead of Debug, though I checked and Debug does the same thing.

     

    How do I get it to compile?

×
×
  • Create New...