The image property will only be set when the texture has actually loaded. If you rewrite your logging, you will see what I mean:
var loader = new THREE.TextureLoader();
loader.load( "assets/texture/.jpg", function( textureCubeAlpha ) {
console.log( textureCubeAlpha );
) );
Anyway, your code is still correct since you can directly assign a texture object to a material. The only thing you have to change is to set the alphaTest property of your material to a value between 0 and 1. I would start with 0.5 and see how it goes. Here is a complete live demo illustrating this approach:
Hey sadly it doesnt work. It only works for alphaTest 0.0. Also the cube dissapears if i have transparency on, or render with alphaTest 0.1 or above. What could be the issue here?
Please try to modify the live example in order to demonstrate the issue. Or try to share a demo as a github repository. It seems it’s not possible to see the error in your code.