| | Re: 3D matrix math question
|
|
(...) If I understand correctly you shouldn't be checking on the projection, only on the full 3D transformed points. That means you should check after stage 2.5. You'll need the Z value to work out which side things lie on. Tim (16 years ago, 14-Dec-08, to lugnet.cad.dev, FTX)
|
|
| | Re: 3D matrix math question
|
|
(...) Actually, the projected points are all that I am checking, and that's how it's supposed to work. (...) No. The way that conditional lines work is that if the two control points lie on the same side of the conditional line on the screen (in (...) (16 years ago, 14-Dec-08, to lugnet.cad.dev, FTX)
|
|
| | Re: 3D matrix math question
|
|
(...) Hmmm... Though I can't quite pin it down I have a suspicion that this has something to do with the spatial reduction cause by projection. What projection matrix are you using? Would a simple solution just be to move the conditional points (...) (16 years ago, 14-Dec-08, to lugnet.cad.dev, FTX)
|
|
| | Re: 3D matrix math question
|
|
(...) OK... I think I understand what I was getting at here. When you introduce perspective then the distance of the conditional point from the line becomes important. Eg. if you have a point that is directly behind its line in a perspective free (...) (16 years ago, 14-Dec-08, to lugnet.cad.dev, FTX)
|
|
| | Re: 3D matrix math question
|
|
(...) Is there some 'easy' way to determine if the control points are in or out of frustum? Is there any other way to transform points, without considering the frustum (Well, obviously there is at least one, but it's the long way of calculating the (...) (16 years ago, 14-Dec-08, to lugnet.cad.dev)
|
|
| | Re: 3D matrix math question
|
|
(...) I think you're right. I'll look into that. It seems like the most straightforward, and since it's just a pre-processing step, it shouldn't affect the performance for anything other than model loading. --Travis (16 years ago, 14-Dec-08, to lugnet.cad.dev, FTX)
|
|
| | Re: 3D matrix math question
|
|
(...) Well, I know where the camera is, and I can create vectors from the camera to both end-points of the conditional line, and to both control points. I'm pretty sure that the calculation could be done with just this information. However, I'm not (...) (16 years ago, 14-Dec-08, to lugnet.cad.dev)
|
|
| | Re: 3D matrix math question
|
|
(...) OK, I applied this fix (pulling the control points to be 1 LDU from the first point of the conditional line), and it seems to work. It makes the "Show control points" option under conditional lines less useful, but that's a price I'm willing (...) (16 years ago, 14-Dec-08, to lugnet.cad.dev, FTX)
|
|
| | Re: 3D matrix math question
|
|
(...) Fixing this one group of rarely important special cases in an efficient manner is probably not the most valuable use of your time. You could always offer 'condition point compression' as a user-selectable option. Tim (16 years ago, 16-Dec-08, to lugnet.cad.dev, FTX)
|
|
| | Re: 3D matrix math question
|
|
(...) This is true, and I actually try to work this way, but if you look up the thread to ((URL) here>), you'll see that this bug led to a problem that would be visible in real-world parts if the suggested conditional edge primitive is created. And (...) (16 years ago, 16-Dec-08, to lugnet.cad.dev, FTX)
|
|
| | Re: 3D matrix math question
|
|
(...) Actually the switch turning off condline controls scaling could be a sub-option of "Show control points" and be active only in this case. BTW, could it be possible to show control lines in another color to distinguish them from conditional (...) (16 years ago, 16-Dec-08, to lugnet.cad.dev, FTX)
|
|
| | Re: 3D matrix math question
|
|
(...) Maybe I'll just automatically disable the scaling when "Show control points" is turned on. I'll definitely disable the scaling when "Show all" is turned on. (...) Having the control lines be a different color won't necessarily help when they (...) (16 years ago, 16-Dec-08, to lugnet.cad.dev, FTX)
|