Jump to content
IgarashiInaba

3d scope texture problem

Recommended Posts

============================================================================================================================================================================================================================

  • This problem has been solved. Aim point MUST in the middle of shadow circle
    • STEP 1:select a circle,Click Edit-Center pin,will see a crosshair in the circle,that is circle center point.

d9f2160216fa8cac.pngThe rvmat and 3d scope sample can download from Arma3 Sample on steam

 

  •  STEP 2:put the mouse to the middle of the crosshair,and press INSERT button to creat a aimpoint. The aimpoint shall as far as possible in middle of the crosshair.57c6d833427ea20b.png
  • STEP 3: copy(or cut) the aim point to memory LOD, Done.

 

Reference page:Arma 3 Scope 3D(I only refernce "Assign respective textures and materials to alpha planes")

 

 

 

============================================================================================================================================================================================================================

 

 

 

Orignal Chinese: 我想模仿官方的3d瞄准镜的视差效果,但是为什么是这个样子?我的阴影材质已经有alpha通道了,图片也是处在正中间。  求解。

Machine translation English:  I want modelled on a 3d scope,,but why is this effect?

b5d20b5738b55672.png       

 

 

like official 3d optic(like ARCO)

dec10ae0cdfdc602.png

 

 

 

The shadow texture is down,My texture is Centrally symmetric and have alpha channel.

5f9fc52fdf9398a6.png

 

 

This is my config set

864a4f0b85973291.png

 

Anyone can tell me what shall I do?

 

  • Like 1

Share this post


Link to post
Share on other sites

Hello IgarashiInaba!

 

Paste all your config here to find the error.

 

try:

 

  • model="Leupold\Leupold_3.p3d";

 

  • modelOptics="\your reticle here";

///////////////////////////////////////////////

modelOptics[]=
                    {
                        "\your reticle here"
                    };
                    visionMode[]=
                    {
                        "Normal",
                        "NVG"
                    };
                    opticsFlare=1;
                    opticsDisablePeripherialVision=1;

 

///////////////////////////////////////////////

Share this post


Link to post
Share on other sites
2 hours ago, GEORGE FLOROS GR said:

Hello IgarashiInaba!

 

Paste all your config here to find the error.

 

try:

 

  • model="Leupold\Leupold_3.p3d";

 

  • modelOptics="\your reticle here";

///////////////////////////////////////////////

modelOptics[]=
                    {
                        "\your reticle here"
                    };
                    visionMode[]=
                    {
                        "Normal",
                        "NVG"
                    };
                    opticsFlare=1;
                    opticsDisablePeripherialVision=1;

 

///////////////////////////////////////////////

class leupold_3x_pip: Itemcore
	{
		weaponInfoType = "scope_3x_pip_handler";
		scope = 2;
		author = "From Gamebanana--Geoset";
		displayName = "Leupold Mark4 M1 3x";
		descriptionShort = "leupold 3x";
		picture = "\leupold\data\icon\leupold_icon_ca.paa";
		model = "\leupold\leupold_3x";
		
		ACE_ScopeAdjust_Vertical[] = {-4,30};
		ACE_ScopeAdjust_Horizontal[] = {-6,6};
		ACE_ScopeAdjust_VerticalIncrement = 0.1;
		ACE_ScopeAdjust_HorizontalIncrement = 0.1;
		class ItemInfo: InventoryOpticsItem_Base_F
		{
			opticType = 2;
			mass = 4;
			RMBhint = "Rifle Combat Optic";
			optics = 1;
			modelOptics[]=
			{
			"\leupold\data\3x_s_ca.paa"
			};
			visionMode[]=
			{
			"Normal",
			"NVG"
			};
			opticsFlare=1;
			opticsDisablePeripherialVision=1;
			opticsDisablePeripherialVision = 0;
			
			class OpticsModes
			{
				class Snip
				{
					opticsID = 1;
					discreteDistance[] = {100,200,300,400,500,600,700,800,900,1000,1100,1200,1300,1400,1500,1600};
					useModelOptics = 0;
					opticsZoomMin = 0.25;
					opticsZoomMax = 1.1;
					opticsZoomInit = 0.75;
					memoryPointCamera = "opticview";
					opticsFlare = 1;
					opticsDisablePeripherialVision = 0;
					distanceZoomMin = 100;
					distanceZoomMax = 100;
					cameraDir = "";
					visionMode[] = {"Normal"};
					opticsPPEffects[] = {"OpticsCHAbera5","OpticsBlur5"};
				};
				class alternative_view
				{
					opticsID = 1;
					useModelOptics = 0;
					opticsPPEffects[] = {""};
					opticsZoomMin = 0.75;
					opticsZoomMax = 0.75;
					opticsZoomInit = 0.75;
					memoryPointCamera = "eye";
					visionMode[] = {};
					opticsFlare = 0;
					opticsDisablePeripherialVision = 0;
					distanceZoomMin = 300;
					distanceZoomMax = 300;
					cameraDir = "";
				};
			};
		};
		MRT_SwitchItemNextClass = "leupold_5x_pip";
		MRT_SwitchItemPrevClass = "leupold_3x_pip";
		MRT_switchItemHintText = "3x zoom";
		inertia = 0.1;
	};

like this?

  • Like 1

Share this post


Link to post
Share on other sites
1 hour ago, IgarashiInaba said:

like this?

ok , i will check this and see if i can find something.

Share this post


Link to post
Share on other sites

try:

class leupold_3x_pip: Itemcore
	{
		weaponInfoType = "scope_3x_pip_handler";
		scope = 2;
		scopeArsenal=2;
		scopeCurator=2;
		author = "From Gamebanana--Geoset";
		displayName = "Leupold Mark4 M1 3x";
		descriptionShort = "leupold 3x";
		picture = "\leupold\data\icon\leupold_icon_ca.paa";
		model = "\leupold\leupold_3x.p3d";
		
		ACE_ScopeAdjust_Vertical[] = {-4,30};
		ACE_ScopeAdjust_Horizontal[] = {-6,6};
		ACE_ScopeAdjust_VerticalIncrement = 0.1;
		ACE_ScopeAdjust_HorizontalIncrement = 0.1;
		class ItemInfo: InventoryOpticsItem_Base_F
		{
			opticType = 2;
			mass = 4;
			RMBhint = "Rifle Combat Optic";
			optics = 1;			
			class OpticsModes
			{
				class Snip
				{
					opticsID = 1;
					discreteDistance[] = {100,200,300,400,500,600,700,800,900,1000,1100,1200,1300,1400,1500,1600};
					useModelOptics = 1;
					opticsZoomMin = 0.25;
					opticsZoomMax = 1.1;
					opticsZoomInit = 0.75;
					memoryPointCamera = "opticview";
					opticsFlare = 1;
					opticsDisablePeripherialVision = 1;
					distanceZoomMin = 100;
					distanceZoomMax = 100;
					cameraDir = "";
					modelOptics[]=
					{
					"\leupold\data\3x_s_ca.paa"
					};
					visionMode[]=
					{
					"Normal",
					"NVG"
					};
					opticsFlare=1;
					opticsDisablePeripherialVision=1;
					opticsPPEffects[] = {"OpticsCHAbera5","OpticsBlur5"};
				};
				class alternative_view
				{
					opticsID = 1;
					useModelOptics = 0;
					opticsPPEffects[] = {""};
					opticsZoomMin = 0.75;
					opticsZoomMax = 0.75;
					opticsZoomInit = 0.75;
					memoryPointCamera = "eye";
					visionMode[] = {};
					opticsFlare = 0;
					opticsDisablePeripherialVision = 0;
					distanceZoomMin = 300;
					distanceZoomMax = 300;
					cameraDir = "";
				};
			};
		};
		MRT_SwitchItemNextClass = "leupold_5x_pip";
		MRT_SwitchItemPrevClass = "leupold_3x_pip";
		MRT_switchItemHintText = "3x zoom";
		inertia = 0.1;
};

 

Share this post


Link to post
Share on other sites
6 hours ago, GEORGE FLOROS GR said:

try:


class leupold_3x_pip: Itemcore
	{
		weaponInfoType = "scope_3x_pip_handler";
		scope = 2;
		scopeArsenal=2;
		scopeCurator=2;
		author = "From Gamebanana--Geoset";
		displayName = "Leupold Mark4 M1 3x";
		descriptionShort = "leupold 3x";
		picture = "\leupold\data\icon\leupold_icon_ca.paa";
		model = "\leupold\leupold_3x.p3d";
		
		ACE_ScopeAdjust_Vertical[] = {-4,30};
		ACE_ScopeAdjust_Horizontal[] = {-6,6};
		ACE_ScopeAdjust_VerticalIncrement = 0.1;
		ACE_ScopeAdjust_HorizontalIncrement = 0.1;
		class ItemInfo: InventoryOpticsItem_Base_F
		{
			opticType = 2;
			mass = 4;
			RMBhint = "Rifle Combat Optic";
			optics = 1;			
			class OpticsModes
			{
				class Snip
				{
					opticsID = 1;
					discreteDistance[] = {100,200,300,400,500,600,700,800,900,1000,1100,1200,1300,1400,1500,1600};
					useModelOptics = 1;
					opticsZoomMin = 0.25;
					opticsZoomMax = 1.1;
					opticsZoomInit = 0.75;
					memoryPointCamera = "opticview";
					opticsFlare = 1;
					opticsDisablePeripherialVision = 1;
					distanceZoomMin = 100;
					distanceZoomMax = 100;
					cameraDir = "";
					modelOptics[]=
					{
					"\leupold\data\3x_s_ca.paa"
					};
					visionMode[]=
					{
					"Normal",
					"NVG"
					};
					opticsFlare=1;
					opticsDisablePeripherialVision=1;
					opticsPPEffects[] = {"OpticsCHAbera5","OpticsBlur5"};
				};
				class alternative_view
				{
					opticsID = 1;
					useModelOptics = 0;
					opticsPPEffects[] = {""};
					opticsZoomMin = 0.75;
					opticsZoomMax = 0.75;
					opticsZoomInit = 0.75;
					memoryPointCamera = "eye";
					visionMode[] = {};
					opticsFlare = 0;
					opticsDisablePeripherialVision = 0;
					distanceZoomMin = 300;
					distanceZoomMax = 300;
					cameraDir = "";
				};
			};
		};
		MRT_SwitchItemNextClass = "leupold_5x_pip";
		MRT_SwitchItemPrevClass = "leupold_3x_pip";
		MRT_switchItemHintText = "3x zoom";
		inertia = 0.1;
};

no,sitll not working fine. when "modelOptics = ........." in "class snipe",the scope is can not aim, when put it in "class ItemInfo: InventoryOpticsItem_Base_F",it can aim but there is _CO texture fill the screen, so it can not aim again   

8928fa96debd51ca.png

 

Share this post


Link to post
Share on other sites
1 hour ago, IgarashiInaba said:

 

I have put new model in objectbuilder and give the shadow model a rvmat and a PAA, before this i have try use 3dmax to build a circle , and use objectbuilder to build a circle, but it all turn to top floor affect.   now i use objectbuidler to build a circle and it turns like this.and it turns like this,  it is normal?

e5bd1348879aca34.png

426860c5e19788b7.png

 

 

 

this is cpp code

class leupold_3x_pip: Itemcore
	{
		weaponInfoType = "scope_3x_pip_handler";
		scope = 2;
		scopeArsenal=2;
		scopeCurator=2;
		author = "From Gamebanana--Geoset";
		displayName = "Leupold Mark4 M1 3x";
		descriptionShort = "leupold 3x";
		picture = "\leupold\data\icon\leupold_icon_ca.paa";
		model = "\leupold\leupold_3x";
		opticsDisablePeripherialVision = 0;
		ACE_ScopeAdjust_Vertical[] = {-4,30};
		ACE_ScopeAdjust_Horizontal[] = {-6,6};
		ACE_ScopeAdjust_VerticalIncrement = 0.1;
		ACE_ScopeAdjust_HorizontalIncrement = 0.1;
		class ItemInfo: InventoryOpticsItem_Base_F
		{
			opticType = 2;
			mass = 4;
			RMBhint = "Rifle Combat Optic";
			optics = 1;
			modelOptics = "\A3\Weapons_F\empty";
			class OpticsModes
			{
				class pso1_scope
				{
					opticsID = 1;
					useModelOptics = 0;
					opticsZoomMin = 0.25;
					opticsZoomMax = 1.1;
					opticsZoomInit = 0.75;
					memoryPointCamera = "opticview";
					opticsFlare = 0;
					opticsDisablePeripherialVision = 0;
					distanceZoomMin = 100;
					distanceZoomMax = 100;
					cameraDir = "";
					visionMode[] = {"Normal"};
					opticsPPEffects[] = {"OpticsCHAbera5","OpticsBlur5"};
				};
				class alternative_view
				{
					opticsID = 1;
					useModelOptics = 0;
					opticsPPEffects[] = {""};
					opticsZoomMin = 0.75;
					opticsZoomMax = 0.75;
					opticsZoomInit = 0.75;
					memoryPointCamera = "eye";
					visionMode[] = {};
					opticsFlare = 0;
					opticsDisablePeripherialVision = 0;
					distanceZoomMin = 300;
					distanceZoomMax = 300;
					cameraDir = "";
				};
			};
		};
		MRT_SwitchItemNextClass = "leupold_5x_pip";
		MRT_SwitchItemPrevClass = "leupold_3x_pip";
		MRT_switchItemHintText = "3x zoom";
		inertia = 0.1;
	};

Share this post


Link to post
Share on other sites

I finaly find where is wrong! Is aim point not Completely in the shadow texture's middle! 

When is correctly in the middle, it shall be like this.

25fe901fe54b0726.png

 

This question is over! fak me this puzzling me 2 days!

  • Like 1

Share this post


Link to post
Share on other sites
10 hours ago, GEORGE FLOROS GR said:

If you fix this working , if you like , write down after the correction.

Thanks!

 

I had change the topic that how do i fix it, help me have a look wehather i am right?

  • Like 1

Share this post


Link to post
Share on other sites

if you have that circle/disk, you shouldn't place the memory point manually. The simplest thing to do is to copy the entire disc in mem lod and merge all points. That will be dead in the center with 100% accuracy

  • Like 1

Share this post


Link to post
Share on other sites
4 hours ago, PuFu said:

if you have that circle/disk, you shouldn't place the memory point manually. The simplest thing to do is to copy the entire disc in mem lod and merge all points. That will dead in the center 100%  accuracy

That is a good way!Thank you for your reply

Share this post


Link to post
Share on other sites

Once you have the pin centred ([C] key is a shortcut for Edit>>Center pin when you have the circle selected), you can just press [Shift+C] to activate the pin (cross gets a little circle in the middle to show the pin is active)

When you press [Insert] to place a vertex it will automatically be created at the centre of the current active pin, instead of at the mouse cursor

 

Active pin can also be used as the centre of rotations and scaling (e.g. collapsing verts to a single point with scale 0,0,0). It's a very useful tool so far as Object Builder goes

  • Like 2

Share this post


Link to post
Share on other sites
On Mon Feb 26 2018 at 9:13 PM, da12thMonkey said:

Once you have the pin centred ([C] key is a shortcut for Edit>>Center pin when you have the circle selected), you can just press [Shift+C] to activate the pin (cross gets a little circle in the middle to show the pin is active)

When you press [Insert] to place a vertex it will automatically be created at the centre of the current active pin, instead of at the mouse cursor

 

Active pin can also be used as the centre of rotations and scaling (e.g. collapsing verts to a single point with scale 0,0,0). It's a very useful tool so far as Object Builder goes

wow...very helpful.thank you for your reply~

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×